JavaScript中的双重或三重(甚至多重)比较

Max*_*xja 14 javascript

全能的大师,请告诉我,我想知道可以比较sm.行中的变量集,如下所示:

x < y >= z 
Run Code Online (Sandbox Code Playgroud)

或者我需要分两步完成?

(x < y) && (y >= z)
Run Code Online (Sandbox Code Playgroud)

Gre*_*ill 17

在Javascript中,您必须分两步执行此类比较.

Python是我所知道的唯一广泛使用的语言,它允许第一种形式(如果我不正确,请评论).


Hoa*_*ieu 5

你应该使用0 < -0.75 && -0.75 < 1.

因为使用a < b < c就像做一样(a < b) < c

让我们解释一下你的情况:

  • 0 < -0.75 < 1
  • 0 < -0.75处理第一个比较 ( ),返回
  • false < 1
  • 然后将 false 转换为数字 0
  • 0 < 1最终返回
  • 真的