JavaScript中的identity操作符是如何工作的?

JavaScript中的identity操作符是如何工作的?,javascript,boolean,comparison-operators,Javascript,Boolean,Comparison Operators,为什么(9>8)==true会导致“true”,而(10>9>8)==true会导致“false”?您应该只有一个比较运算符,而不使用AND(&&&)或or(| |)运算符 如果要将(10>9>8)解析为true,请将其格式化如下: (10>9&&9>8) 这表示“检查10>9,如果这是真的,检查9>8。如果两者都是真的,则返回真”因为: 10 > 9 > 8 === (true) > 8 这是错误的。在truthy值中,true表示为“1”。由于true>0和false9>

为什么
(9>8)==true
会导致“
true
”,而
(10>9>8)==true
会导致“
false
”?

您应该只有一个比较运算符,而不使用AND(&&&)或or(| |)运算符

如果要将(10>9>8)解析为true,请将其格式化如下:

(10>9&&9>8)

这表示“检查10>9,如果这是真的,检查9>8。如果两者都是真的,则返回真”

因为:

10 > 9 > 8 === (true) > 8

这是错误的。在truthy值中,true表示为“1”。由于
true>0
false<1

如果我们同时看到这两种情况,JavaScript将从左到右执行。众所周知:

(9 > 8) === true
上述说法确实属实。但我们需要知道的是,JavaScript是如何执行的。如果我们看到它是如何执行的,执行步骤如下:

(10 > 9 > 8) === true
((10 > 9) > 8) === true
(true > 8) === true
(1 > 8) === true
false === true
false
您的语句无效(10>9>8)被编译为((10>9)>8),即(true>8)。建议使用js中的1为true。(1>8)为falsefirst:(true)==true第二:(true>8)===true->true-转换为1,1>8=false,false==true->false。我想……)