JavaScript数据类型
ECMAScript有6种简单数据类型:Undefined、Null、Boolean、Number、String、Symbol。
还有一种复杂类型:Object(对象)
注:Symbol为ES6新增
一、typeof操作符
undefind 表示值未定义
boolean 表示值为布尔值
string 表示值为字符串
object 表示值为对象(而不是函数)或null
function 表示值为函数
nunber 表示值为数值
symbol 表示值为符号
下面是使用typef操作符的例子:
let message = "some string";
console.log(typeof message); // string
console.log(typeof(message)); // string
console.log(typeof 18) // number
二、Undefined类型
Undefined类型只有一个值,就是特殊值undefined。当使用var或let声明了变量但没有初识化,就相当于给变量赋予了undefined值:
let message;
console.log(message); // undefined
console.log(message == undefined); // true
console.log(age); // 报错 age未定义
如果未定义的变量直接输出会报错
三、Null类型
Null类型同样只有一个值,即特殊值null。逻辑上讲,null值表示一个空对象指针,这也是给typeof传一个null会返回"object"的原因,undefined值是由null值派生而来的,因此ECMA-262将它们定义为表面上相等。
let car = null;
console.log(typeof car); // "object"
console.log(null == undefined) // true
四、Boolean类型
Boolean类型是ECMAScript中使用最频繁的类型之一,有两个字面值:true跟false。这两个布尔值不同于数值,因此true不等于1,false不等于0。下面是给变量赋布尔值的例子:
let found = true;
let lost = false;
五、Number类型
ECMAScript中最有意思的数据类型或许就是Number了。Number类型使用IEEE 754格式表示整数和浮点值。不同的数值类型相应地也有不同的数值字面量格式。
最基本的数值字面量是十进制整数,直接写出来即可:
let intNum = 55; // 整数
六、String类型
String(字符串)数据类型表示零或多个16位Unicode字符序列。字符串可以使用(")、单引号(’)或反引号(`)标识:
let firstName = "John";
let lastName = 'Jacob';
let lastName = `Jingleheimerschmidt`
七、Obejct类型
ECMAScript中的对象其实就是一组数据和功能的集合。对象通过new操作符后跟对象类型的名称来创建。开发者可以通过创建Object类型的实例来创建自己的对象,然后再给对象添加属性和方法:
let o = new Object();
let o = new Object; // 符合规则,但不推荐

被折叠的 条评论
为什么被折叠?



