老师关于资料中有个不明白的

来源:6-6 逻辑或逻辑非

qq_久坠深海_0

2020-05-19 00:35:16

'null' | | isNaN(false)
"null"
这里是怎么一个比较的方法呢?
我先说下自己的理解。
null==undefiend返回的结果都是:true。(是这样理解么?还是说这里的null只是一个类似hello类型自定义的一个字符串而已?因为我看它加了引号的?感觉应该像是之前说的unicode字符组成的字符串)
但这里isNan(false)中的(false为啥返回是false,这说明它是一个数值呀?)为啥?
还有isNan(null)为什么也是一个数值呢?
麻烦哪位老师回答一下。

写回答

1回答

好帮手慕星星

2020-05-19

同学你好,这里'null'加了引号就是一个普通字符串了,并不是null值。如下

http://img.mukewang.com/climg/5ec34c88096b17ba01880052.jpg

'null'转化为布尔值为true

http://img.mukewang.com/climg/5ec34cc509cb03f101980055.jpg

isNaN()方法检测参数是否为非数字如果是数字返回值为false,不是数字返回值为true。会先将参数进行隐式转化为数字,false转化为数字类型为0

http://img.mukewang.com/climg/5ec34d32098545b501640057.jpg

0是数字,所以返回值为false

http://img.mukewang.com/climg/5ec34d51093d526d01550065.jpg

isNaN(null)也是一样的道理,null转化为数字类型为0,是数字

http://img.mukewang.com/climg/5ec34e1b096c986601690056.jpg

所以isNaN(null)的值为false。

最后逻辑或检测一个为true就会中断,所以这行代码的返回值为‘null’

http://img.mukewang.com/climg/5ec34d63091a7a5502590063.jpg

自己再测试理解下,祝学习愉快!

0
hq_久坠深海_0
h 好的 谢谢老师 已理解
h020-05-21
共1条回复

0 学习 · 40143 问题

查看课程