Sha*_*yar 4 javascript if-statement
var text = 'abc';
if(text = '' || text != '')
console.log(text);
else
console.log('in else');
Run Code Online (Sandbox Code Playgroud)
它只是一个无用的代码片段,但它给出了我根本没想到的奇怪结果.所以我的好奇心把我带到了这里.
它只打印true.
为什么它更新text值true而不是将其设置为空?
表达方式
text = '' || text != ''
Run Code Online (Sandbox Code Playgroud)
被解析为
text = ('' || text != '')
Run Code Online (Sandbox Code Playgroud)
的价值
('' || text != '')
Run Code Online (Sandbox Code Playgroud)
是true因为text != ''是布尔值true.