星期三, 29. 三月 2017 09:18下午
js 中的基本数据类型
- Undefined 类型
- Null 类型
- Boolean
- String
- Number
- Object
- Symbol (es6 新增)
每种基本类型 typeof 的返回值
typeof 是操作符,而不是函数
- typeof Undefined ---> "undefined"
- typeof Null ---> "object"
- typeof Boolean ---> "boolean"
- typeof String ---> "string"
- typeof Number ---> "number"
- typeof Object ---> "object"
- typeof Symbol ---> "symbol"
Null 类型的数据,typeof 的返回值是 "object"
Undefined 类型
声明变量,不进行赋值 , 则a的值为 undefined
var a ; // 声明函数,不进行赋值 a的值为 undefined
Null 类型
声明变量,主动赋值 null
var a = null; // 需要主动赋值 null
Symbol 类型
表示独一无二的值
声明
var s = Symbol(); //表示独一无二的值
参数
参数是一个对象,调用该对象的 toString 方法,将其转化为字符串在生成一个 Symbol 值
比较
每次调用Symbol 生成一个独一无二的值
var a = Symbol();
var b = Symbol();
a == b // false
生成相同的 Symbol 值
var a = Symbol.for('foo');
var b = Symbol.for('foo');
a == b // true
Symbol.for 先检查是否已经有这个key值的symbol , 如果没有才会创建。