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 中类型转换只有三种情况:转换为布尔值、转换为数字、转换为字符串
附图:
总结:
转Boolean:在条件判断时,除了 undefined, null, false, NaN, ‘’, 0, -0,其他所有值都转为 true,包括所有对象。
对象转原始类型:对象在转换类型的时候,会调用内置的 ToPrimitive函数。
算法逻辑为:如果已经是原始类型了,那就不需要转换了;调用 x.valueOf(),如果转换为基础类型,就返回转换的值;调用 x.toString(),如果转换为基础类型,就返回转换的值;如果都没有返回原始类型,就会报错。
上一篇: Java中的原始类型和变量
下一篇: CVE-2019-9762漏洞复现
推荐阅读
-
Python中内置数据类型list,tuple,dict,set的区别和用法
-
C语言中值得深入知识点----数组做函数参数、数组名a与&a区别、数组名a的"数据类型"
-
js数据类型转换有几种(js深拷贝的三种实现方式)
-
js数据类型的区别和使用讲解
-
基本数据类型和包装类的区别
-
解决无法在unicode和非unicode字符串数据类型之间转换的方法详解
-
SQL2005中char nchar varchar nvarchar数据类型的区别和使用环境讲解
-
python数据类型中series与array的区别
-
Java中成员变量与局部变量的区别、对象类型作为方法的参数和方法的返回值
-
Python中内置数据类型list,tuple,dict,set的区别和用法