一道笔试题引发的一系列js类型转换的坑

xiaoxiao2021-02-28  79

前两天看到这道笔试题当时做错了,我的答案是true false false(大家可以想下自己的答案)然后仔细查阅了一下资料发现js的类型转换确实还是挺多小坑的,下面是我整理的资料,相信看完这道题也就迎刃而解了:

js中的==和===

js中的类型转换

第一题:[]会转换成为一个布尔值,根据前面说的所有的对象都转换为true,则第一题返回true

第二题:首先[]会转换为原始值,首先调用valueOf()返回数组本身,然后调用toString()返回空字符串,空字符串再转换为0,而false则根据==的隐士转换规则转换为0,所以返回true

第三题:首先{}会转换为原始值,首先调用valueOf()返回对象本身,然后调用toString()返回“[object object]”转换成数字为NaN,而false转换为数字为0,所以返回false.

转载请注明原文地址: https://www.6miu.com/read-47078.html

最新回复(0)