2-4问题

来源:15-4 变量类型和计算-3 代码演示

qq_那些荒废流年

2019-03-07

老师对于逻辑与逻辑非我还是不是很清楚 因为书上写的也不是很详细 是在比较的时候把每一个操作数都要做强制类型转换吗 那转换完之后为什么还会有不返回true或者false的情况 图片描述
还有这张图中的对象是什么意思 图片中第一个操作数不是一个字符串吗 怎么又和对象有关了 这里是指广义的对象吗

写回答

1回答

双越

2019-03-07

 你不用管第一个、第二个操作数是什么类型,你就把所有的操作数都变成 true 或者 false ,然后再进行 && 比较就行了,这样最为好理解。

至于操作数如何变成 true 或者 false ?只需要记住这几个是 false —— 0,空字符串,null,undefined,false 。其他的都是 true 。

0
6
双越
回复
qq_那些荒废流年
应该的。js 的 && 和 C 语言的不一样,C 语言的 && 只能计算 true 或者 false ,而 js 的计算类型就比较灵活。js 说实话是一门类型比较随意的语言,没有 C 和 java 这么规范,这也是大家对 js 的诟病之一,但是我们作为前端开发者只能选择接受。
2019-03-08
共6条回复

BAT大牛带你横扫初级前端JavaScript面试(第二版)

BAT高级前端工程师亲授,结合真实面试题,提高面试成功几率

4268 学习 · 817 问题

查看课程