在javascript中,
var a = '';
var b = (a) ? true : false;
var b
将设置为false
。
这是可以依赖的已定义行为吗?
发布于 2012-01-01 20:05:56
是。所有false
、0
、空字符串''
和""
、NaN
、undefined
和null
的计算结果始终为false
;其他值均为true
。
在你的例子中,b是求值后的false
。(我想你把true
写错了)
发布于 2012-01-01 20:05:58
var b
将设置为true
。这是因为在JavaScript中,空字符串和其他一些值一样被视为'falsey‘值。
发布于 2021-11-25 12:06:23
是的,您可以依赖于该行为。
一种更简单的编写方法是:
var b = !!a;
https://stackoverflow.com/questions/8692982
复制相似问题