在javaScript中,字符串'0'为true | false

p2w*_*rld 3 javascript boolean

可能重复:
为什么('0'?'a':'b')的行为不同于('0'== true?'a':'b')

'0' == false; // true

'0' || 1; // '0'

'0' ? true : false; // true

!!'0' // true
Run Code Online (Sandbox Code Playgroud)

"=="会投'0'- > 0- > false,但其他不?

我想要更多细节.

Lio*_*ion 7

Javascript真值表给你.

''        ==   '0'           // false
0         ==   ''            // true
0         ==   '0'           // true
false     ==   'false'       // false
false     ==   '0'           // true
false     ==   undefined     // false
false     ==   null          // false
null      ==   undefined     // true
" \t\r\n" ==   0             // true
Run Code Online (Sandbox Code Playgroud)

尝试一下,我想你可以消除你的困惑.