Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript中,空字符串计算为false的原因是什么_Javascript - Fatal编程技术网

在Javascript中,空字符串计算为false的原因是什么

在Javascript中,空字符串计算为false的原因是什么,javascript,Javascript,为什么在JavaScript中空字符串的计算结果为false。我知道Douglas Crockford在javascript中对truthy和falsy说了很多,但这仍然让我感到惊讶: if("") alert("you will never see this"); 任何人都知道这种行为的基础是什么。它是按照ECMAScript规范以这种方式实现的吗?我很好奇。因为里面什么都没有。空字符串在许多语言中都是假值。根据规范,这是标准 如果参数为空字符串(其长度为零),则结果为false;

为什么在JavaScript中空字符串的计算结果为false。我知道Douglas Crockford在javascript中对truthy和falsy说了很多,但这仍然让我感到惊讶:

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

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

因为里面什么都没有。空字符串在许多语言中都是假值。根据规范,这是标准

如果参数为空字符串(其长度为零),则结果为false; 否则,结果是正确的


-如何解释
''==false的第9.2节是否为假?因为
==
的要点是它不进行类型转换,并且大多数假值不是
false
false
是一个假值,即
false
)。@kooinc:严格比较也会检查类型。字符串不是布尔值,因此它们不相等。