欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

js数据类型,原始类型和对象类型的区别与类型转换

程序员文章站 2022-03-25 10:28:57
...

原始(Primitive)类型(6种)

boolean、null、undefined、number、string、symbol
其中symbol为es6新增的数据类型

原始类型与对象类型(Object)的区别

原始类型存储的是,对象类型存储的是地址(指针)
例如:

    var a = 123;
    var b = {'b':123};
    console.log(a)
    console.log(b)

js数据类型,原始类型和对象类型的区别与类型转换

类型转换

JS 中类型转换只有三种情况:转换为布尔值、转换为数字、转换为字符串
附图:
js数据类型,原始类型和对象类型的区别与类型转换

总结:

转Boolean:在条件判断时,除了 undefined, null, false, NaN, ‘’, 0, -0,其他所有值都转为 true,包括所有对象。

对象转原始类型:对象在转换类型的时候,会调用内置的 ToPrimitive函数。
算法逻辑为:如果已经是原始类型了,那就不需要转换了;调用 x.valueOf(),如果转换为基础类型,就返回转换的值;调用 x.toString(),如果转换为基础类型,就返回转换的值;如果都没有返回原始类型,就会报错。

相关标签: js