疑惑打印console.log([]==false) 返回为 true 各位有什么建议?

测试如下
console.log([]==false)
打印值为true
然后
[]?console.log('aaa'):consoel.log("bbb")
打印值为aaa
那么[]到底为true还是false###问题描述
问题出现的环境背景及自己尝试过哪些方法
相关代码
//请把代码文本粘贴到下方(请勿用图片代替代码)
你期待的结果是什么?实际看到的错误信息又是什么?
SMILET
浏览 360回答 2
2回答

牧羊人nacy

关于比较去参考MDN的Java​Script中的相等性判断,你会发现文末给出的JS比较表可以解答你的第一个问题(当然还是推荐把MDN那篇先看完再说);而第二个其实是个类型转换,相当于Boolean([])的结果(可以去控制台跑下),相当于你使用了一个错误的数据类型,我个人认为虽然Java​Script是个弱类型语言,但是还是要注意尽量保持类型的统一,可以偶尔借用类型转换的特性,但是多数情况下,还是尽量不要用这种给自己留坑的做法吧。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript