数据类型
1、基本数据类型(原始类型):值直接保存在变量本地的数据类型
null:主动释放对象的引用时使用
undefined:所有变量的默认值
Boolea
String:用unicode编号保存每个字符,查看任意字符unicode “xxx”.charCodeAt(0)
Number: 计算机也有计算不尽的时候,即舍入误差,解决 n.toFixed(d) ,监测时常使用isNaN(number)函数判断是否为数值类型
symbol 新增的
2、引用数据类型
Object
========================================================
请注意:
- NaN的数据类型是Number
- 数组的数据类型是Object <= typeof
- Null的数据类型是Object <= typeof
- 未定义变量的数据类型是undefined
*******************************************************************************************
数据类型判断
1. typeof
typeof "John" // 返回 string
typeof 3.14 // 返回 number
typeof NaN // 返回 number
typeof false // 返回 boolean
typeof [1,2,3,4] // 返回 object
typeof {name:'John', age:34} // 返回 object
typeof new Date() // 返回 object
typeof function () {} // 返回 function
typeof myCar // 返回 undefined (如果 myCar 没有声明)
typeof null // 返回 object
注意:我们可以使用 typeof 来获取一个变量是否存在,如 if(typeof a!="undefined"){},而不要去使用 if(a) 因为如果 a 不存在(未声明)则会出错
2. instanceof:obj(实例对象) instanceof Object(构造函数)
只能用来判断复杂数据类型,用于监测构造函数(右边)的prototype属性是否出现在某个实例对象(左边)的原型链上
var c = [1,2,5,6]
var d = {name: 'sadasd'}
var e = function() {}
console.log(d instanceof Object)
3. constructor
4. Object.property.toString.call()
他返回"[object, 类型]",注意返回的格式及大小写,前面是小写,后面是首字母大写
付个链接加深一下理解:www.jianshu.com/p/e4237ebb1…