JavaScript 类型

141 阅读1分钟

JavaScript 语言规定了 7 种语言类型

  • Undefined

  • Null

  • Boolean

  • String

  • Number

  • Object

  • Symbol

    Symbol 是 ES6 中引入的新类型


  1. Undefined

问题:为什么有些规范要求使用 void 0 代替 undefined
解决:void是JavaScript的一个操作符,而void 0会返回undefined

    console.log( void 0 === undefined)   // true

MDN上对于Undefined的定义:undefined是全局对象的一个属性,也就是说,它是全局作用域中的一个变量,undefined的最初值就是原始数据类型undefined。

ES5之后的标准中,规定了全局变量下的undefined值为只读,不可改写的,但是局部变量中依然可以对之进行改写。

所以好处一是防止被重写,二是节省字符

  1. Boolean

     true /false
    
  2. String

    最大长度:2^53 - 1 (字符串的UTF16编码长度)

  3. Number

  • NAN
  • infinity 无穷大
  • -infinity 负无穷大
  1. Symbol

  2. Object

    对象的定义是属性的集合
    属性分为数据属性和访问器属性