为什么它; LT;返回 true 但 gt; > > JavaScript 中返回 false?
收藏
哈喽!大家好,很高兴又见面了,我是米云的一名作者,今天由我给大家带来一篇《为什么它; LT;返回 true 但 gt; > > JavaScript 中返回 false?》,本文主要会讲到等等知识点,希望大家一起学习进步,也欢迎大家关注、点赞、收藏、转发! 下面就一起来看看吧!
> JavaScript 中返回 false?” />
嘿,javascript 粉丝!您是否曾经遇到过这样的时刻:您的代码做了一些奇怪的事情,而您却摸不着头脑?好吧,今天我给你准备了一份好东西。
看看这个:
console.log(1 < 2 < 3); // true console.log(3 > 2 > 1); // false
等等,什么?第二个是假的?但是3大于2,2又大于1,对吗?那么这里发生了什么?
让我们来分解一下:
- javascript 从左到右读取这些比较。
- 对于 1 < 2 < 3:
- 首先,它执行 1 < 2。确实如此。
- 然后它确实是 < 3.
- 对于 3 > 2 > 1:
- 首先,它执行 3 > 2。确实如此。
- 然后它确实是 > 1.
现在,重点来了:当 javascript 将 true 与数字进行比较时,它会将 true 变成 1。
所以真正发生的是:
- true < 3 变成 1 < 3,这是真的。
- true > 1 变成 1 > 1,这是 false.
这就是为什么我们第一个为真而第二个为假。
疯了,对吧?
那么,我们可以从中学到什么?当你进行多重比较时,最好是清楚的。您可以编写 (3 > 2) && (2 > 1),而不是 3 > 2 > 1。虽然有点长,但至少达到了你的预期。
理论要掌握,实操不能落!以上关于《为什么它; LT;返回 true 但 gt; > > JavaScript 中返回 false?》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注米云公众号吧!
版本声明 本文转载于:dev.to 如有侵犯,请联系删除
- 如何将省市区树形结构转换成扁平化结构?
