!!''false>!![]trueString,据我了解,实际上是一个数组,添加了一些额外的功能,以使文本更易于使用,但它仍然可以执行所有类似数组的操作,所以为什么是一个空字符串fals"> 为什么空字符串是假的,而空数组却不是?-PHP中文网问答
为什么空字符串是假的,而空数组却不是?
P粉710478990
P粉710478990 2023-09-08 14:29:03
0
1
450

我知道这个问题的答案是它在规范中,但其背后的逻辑(如果有的话)是什么?

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

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

P粉710478990
P粉710478990

全部回复 (1)
P粉309989673

让我们简单一点:

!!''

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

!![]

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

    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!