在Javascript中空字符串求值为false的原因是什么

时间:2011-08-09 09:57:58

标签: javascript

为什么在JavaScript中空字符串的计算结果为false。我知道道格拉斯·克罗克福德已经在javascript中讲了很多关于truthy和falsy但是这仍然让我感到惊讶:

if("")
    alert("you will never see this");

任何人都知道这种行为的基础是什么。是否按照ECMAScript规范以这种方式实现?我很好奇。

1 个答案:

答案 0 :(得分:6)

因为它没有任何内容。空字符串是许多语言中的错误值。根据规范,这是标准的。

  

如果参数为空String(其长度为零),则结果为false;   否则结果是真的

- Ecma-262

的第9.2节