在 javascript 中,空字符串是否总是错误的布尔值?

2022-01-19 00:00:00 string boolean 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

相关文章