测试如下console.log([]==false)打印值为true然后[]?console.log('aaa'):consoel.log("bbb")打印值为aaa那么[]到底为true还是false###问题描述问题出现的环境背景及自己尝试过哪些方法相关代码//请把代码文本粘贴到下方(请勿用图片代替代码)你期待的结果是什么?实际看到的错误信息又是什么?
2 回答
牧羊人nacy
TA贡献1862条经验 获得超7个赞
关于比较去参考MDN的JavaScript中的相等性判断,你会发现文末给出的JS比较表可以解答你的第一个问题(当然还是推荐把MDN那篇先看完再说);而第二个其实是个类型转换,相当于Boolean([])的结果(可以去控制台跑下),相当于你使用了一个错误的数据类型,我个人认为虽然JavaScript是个弱类型语言,但是还是要注意尽量保持类型的统一,可以偶尔借用类型转换的特性,但是多数情况下,还是尽量不要用这种给自己留坑的做法吧。
添加回答
举报
0/150
提交
取消