首先看下大概流程

【一】基础

接下来看下数据类型分类和判断

(1)数据类型分类

基本类型/值类型5种
  ---字符串String、数字Number、布尔值Boolean、未定义undefined、空null 对象类型/引用类型
  ---Object(任意对象)
    Function(一种特别的对象,可以执行)
    Array(一种特别的对象,数值下标属性,内部数据是有序的)

(2)判断数据类型

typeof(可以判断undefined、数值、字符串、布尔值)
instanceof(判断对象的具体类型,判断是函数还是数组... ...)
===(仅仅可以判断undefined和null)

  1、typeof返回数据类型的字符串表达式,注意"这里返回结果为字符串格式表达的数据类型",且都是小写

    

  2、所以验证undefined数据类型时必须注意,typeof返回的时数据类型的字符串表达式

  3、除了使用typeof还可以使用===严格运算符作比较,如下所示

    

  4、使用typeof判断null

    

     此时发现返回的是object,无法使用typeof判断null数据类型,这里需要用到===严格运算符

console.log(y === null);//true

    此时发现可以用严格运算符===判断的数据类型包含两个,即undefined和null

    原因:这两个数据类型只有一个值

    

  5、接下俩判断复杂数据类型

    instanceof实例隶属于--判断实例对象是否隶属于构造函数

    

   6、万物皆对象  

    正如上面所说,Object是任意对象,Function是一种可以执行的特别的对象,而Array也是一种特别的对象,拥有数值下标,且内部数据是有序的

     

   7、判断函数数据类型还有其他方案,即typeof

    

   8、验证console.log数据类型

    //true

 

(3)小结

  1、对象作用:存储数据

  2、数据也是特殊对象,有序性

  3、类型判断

    

【二】相关问题

(1)什么是实例?

  实例也叫实例对象,是由类型对象即构造函数实例化后得出的对象

  

(2)undefined和null区别?

、undefined代表定义了未赋值
、null代表定义了,且赋值了,但是值为null

(3)何时给变量赋值为null?

注意:
null为空,属于基本数据类型
但typeof null为object

自相矛盾... ...

但是要从开发角度理解,例如b为对象,但是此时数据还没有过来,所以此时可以赋值为null,表示后期将要赋值为对象

此时b便确定了对象赋值,最后如果再为null,则会释放该数据对象所占用的内存---即释放数据对象所占内存

答案:---初始赋值和结束赋值

(4)如何严格区别变量类型和数据类型?

  

.

JS高阶---简介+数据类型的更多相关文章

  1. JS高阶函数的理解(函数作为参数传递)

    JS高阶函数的理解 高阶函数是指至少满足下列条件之一的函数. · 函数可以作为参数被传递 · 函数可以作为返回值输出 一个例子,我们想在页面中创建100个div节点,这是一种写法.我们发现并不是所有用 ...

  2. React.js高阶函数的定义与使用

    /* 高阶函数的简单定义与使用 一: 先定义一个普通组件 二: 用function higherOrder(WrappendComponent) { return } 将组件包裹起来,并用export ...

  3. js高阶函数

    我是一个对js还不是很精通的选手: 关于高阶函数详细的解释 一个高阶函数需要满足的条件(任选其一即可) 1:函数可以作为参数被传递 2:函数可以作为返回值输出 吧函数作为参数传递,这代表我们可以抽离一 ...

  4. js高阶函数应用—函数防抖和节流

    高阶函数指的是至少满足下列两个条件之一的函数: 1. 函数可以作为参数被传递:2.函数可以作为返回值输出: javaScript中的函数显然具备高级函数的特征,这使得函数运用更灵活,作为学习js必定会 ...

  5. js 高阶函数 闭包

    摘自  https://www.cnblogs.com/bobodeboke/p/5594647.html 建议结合另外一篇关于闭包的文章一起阅读:http://www.cnblogs.com/bob ...

  6. 浅谈JS高阶函数

    引入 我们都知道函数是被设计为执行特定任务的代码块,会在某代码调用它时被执行,获得返回值或者实现其他功能.函数有函数名和参数,而函数参数是当调用函数接收的真实的值. 今天要说的高阶函数的英文为High ...

  7. js高阶函数汇总

    map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值,函数按照原始数组元素顺序依次处理元素. 注意: map() 不会对空数组进行检测. 注意: map() 不会改变原始数组. ...

  8. JS高阶函数的使用

    1.何为高阶函数呢? JavaScript的函数其实都指向某个变量.既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数.简单来说,就是对其他 ...

  9. JS 高阶函数

    笔记整理自:廖雪峰老师的JS教程 目录 概述 Array中的高阶函数 map(返回新的Array) reduce(返回新的Array) filter(返回新的Array) sort(返回同一Array ...

随机推荐

  1. CSP2019滚粗记

    CSP2019滚粗记 从不拖更 Day -inf 考完月考才停课\kel,然后月考又被吊打了. Day -1 和左边的\({\text L}\color{red} {\text{ongge}}\)右边 ...

  2. JAVA开发者大会-Spring Cloud网关分享

    新书购买:单本75折包邮

  3. python使用rdflib创建rdf,在jena fuseki上执行SPARQL查询

    建立并启动jena fuseki服务 参考:https://www.cnblogs.com/bincoding/p/11223372.html 使用rdflib创建rdf文件 import rdfli ...

  4. 【2019年07月22日】A股最便宜的股票

    查看更多A股最便宜的股票:androidinvest.com/CNValueTop/ 便宜指数 = PE + PB + 股息 + ROE,四因子等权,数值越大代表越低估. 本策略只是根据最新的数据来选 ...

  5. django实战(二)--带多字段模糊查询的分页(也是不容易)

    上节我们实现了分页功能,这节我们要实现对模糊查询后的结果进行分页.(引入了bootstrap框架) urls.py from django.urls import path from . import ...

  6. Nginx 变量参数

    $args #请求中的参数值 $query_string #同 $args $arg_NAME #GET请求中NAME的值 $is_args #如果请求中有参数,值为"?",否则为 ...

  7. WPF DataGrid横向显示

    前言 利用各种变换,将其水平改向至横向显示. 注意的是要固定好单元格的高宽,或者手动编写style 否者在滚动的时候,会有高宽比例不一样的时候 再其次,要注意datagrid的容器或者datagrid ...

  8. 浅谈mongodb内存

    本文仅限于mongodb3.0.0(wiredtiger引擎) 一.mongodb内存使用 1.热数据 这一点是SQL和nosql之间的巨大差距,将热数据存在内存相当于自带cache,若wiredti ...

  9. http内网转发

    package main import ( "io" "log" "net/http" "strings" ) func ...

  10. Java匹马行天下之JavaSE核心技术——反射机制

    Java反射机制 一.什么是反射? 在运行状态中,对于任意一个类,都能够获取到这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性(包括私有的方法和属性),这种动态获取的信息以及 ...