位置:首页 > 软件操作教程 > 编程开发 > JavaScript > 问题详情

JavaScript 转换为简单值

提问人:刘团圆发布时间:2020-11-23

■知识点

    在逻辑运算环境中,所有复合型数据对象转换为布尔值的都为true。

    在数值运算环境中,对象会尝试调用valueOf()方法,如果不成功,再调用toStringO方法,获取一个值,然后尝试把该值转换为数字。如果转换成功,则取用该值参与运算;如果转换失败,则取用NaN参与运算。

    在字符串运算环境中,对象会调用toStringO方法获取对象的字符串表示,以此作为转换的值。

    数组转换为简单值时,会调用toStringO方法获取一个字符串表示,然后根据具体的运算环境,再把该字符串转换为对应类型的简单值。

S 如果为空数组,则转换为空字符串。

S 如果仅包含一个元素,则取该元素值。

S 如果包含多个元素,则转换为多个元素的值组合的字符串,并以逗号分隔。

函数转换为简单值时,会调用toStringO方法获取字符串表示。对于普通函数,则返回的是函数代码本身,然后根据不同运算环境,再把该字符串表示转换为对应类型的值。

■实例设计

【示例】下面的代码创建3个不同类型的对象,然后参与逻辑与运算,因为不管其值是什么,凡是对象转换为布尔值的都为true,所以才会看到不同的显示结果。

var b = mew Boolean(false);               //包装false为对象

var n = new Number(0);                    //包装数字0为对象

var s = new String("");                      //包装空字符串对象

b && console.log(b);                      //如果b为true,则显示"false"

n && console.log(n);                      //如果n为true,则显示"0"

s && console.log(s);                      //如果s为true,则显示""

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部