在 javascript 中,空字符串是否总是错误的布尔值?
在 JavaScript 中,
in javascript,
var a = '';
var b = (a) ? true : false;
var b
将被设置为 false
.
这是可以依赖的已定义行为吗?
is this a defined behavior that can be relied upon?
推荐答案
是的.Javascript 是 ECMAScript 的一种方言,ECMAScript 语言规范明确定义了这种行为:
Yes. Javascript is a dialect of ECMAScript, and ECMAScript language specification clearly defines this behavior:
ToBoolean
如果参数是空字符串(其长度为零),则结果为假;否则结果为真
The result is false if the argument is the empty String (its length is zero); otherwise the result is true
引自 http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf
相关文章