Warum ist eine leere Zeichenfolge falsch, ein leeres Array jedoch nicht?
P粉710478990
P粉710478990 2023-09-08 14:29:03
0
1
588

Ich weiß, die Antwort auf diese Frage ist sie steht in der Spezifikation, aber was ist die Logik dahinter (falls vorhanden)?

Welcome to Node.js v19.0.0.
Type ".help" for more information.
> !!''
false
> !![]
true

String,据我了解,实际上是一个数组,添加了一些额外的功能,以使文本更易于使用,但它仍然可以执行所有类似数组的操作,所以为什么是一个空字符串falsey 但空数组是truthy?

P粉710478990
P粉710478990

Antworte allen(1)
P粉309989673

让我们简单一点:

!!''

JavaScript 中的空字符串被视为“假”值。在布尔上下文中求值时,它被视为布尔 false。

!![]

数组,无论是否包含项目,在 Javascript 中都被视为“真实”值。在布尔上下文中求值时,它们被视为布尔 true。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage