0
点赞
收藏
分享

微信扫一扫

隐式和显式转换有什么区别?


隐式强制换是一种将值转换为另一种类型的方法,这个过程是自动完成的,无需我们手动操作。

假设我们下面有一个例子。

console.log(1 + '6'); // 16
console.log(false + true); // 1
console.log(6 * '2'); // 12

第一个​​console.log​​​语句结果为​​16​​​。在其他语言中,这会抛出编译时错误,但在 JS 中,​​1​​​被换成字符串,然后与​​+运​​算符连接。我们没有做任何事情,它是由 JS 自动完成。

第二个​​console.log​​​语句结果为​​1​​​,JS 将​​false​​​换为​​boolean​​​ 值为 ​​0​​​,,​​true​​​为​​1​​​,因此结果为​​1​​。

第三个​​console.log​​​语句结果​​12​​​,它将​​'2'​​​换为一个数字,然后乘以​​6 * 2​​,结果是12。

而显式强制是将值换为另一种类型的方法,我们需要手动转换。

console.log(1 + parseInt('6'));

在本例中,我们使用​​parseInt​​​函数将​​'6'​​​换为​​number​​​ ,然后使用​​+​​​运算符将​​1​​​和​​6​​相加。


举报

相关推荐

0 条评论