js 中的原始值和对象

js中数据类型:原始值(null、 undefined、 布尔值、 数字 、字符串)与对象

原始值不可改变。对象可变也就是值是可以修改的。


对象转化为原始值:

1、对象转为boolean。

所有的对象转为boolean 都为 `true` 

2、对象转化为string

所有的对象都继承了两个方法:1.toString() 2.valueOf()。 先使用toString()方法,如果对象没有toString方法。则使用valueOf()

2.1 toString

很多类定义特定的版本的toString 方法。

比如 

数组类的toString: [1,2,3].toString()  // =>"1,2,3"

函数类的toString:将用户定义的函数转化为源代码字符串  

日期类的toString: 返回一个可读的日期和视觉字符串

3、对象转化为number

与转为String类似 。只是 先使用valueOf()方法,如果对象没有valueOf方法。则使用toString()。否则抛异常。

这就解释了String([])  为 ' '  Number([]) 为 0

你可能感兴趣的:(js 中的原始值和对象)