gpt4 book ai didi

javascript - [] + {} 等于 [object Object],在 JavaScript 中?如何?

转载 作者:行者123 更新时间:2023-12-02 12:42:22 25 4
gpt4 key购买 nike

Possible Duplicate:
What is the explanation for these bizarre JavaScript behaviours mentioned in the 'Wat' talk for CodeMash 2012?

我对 JavaScript 很陌生。我有这样的代码:

<script type="text/javascript">
console.log( [] + {} );
</script>

我的 Google Chrome 浏览器日志:

[object Object]

它看起来对我来说很重要!并做这样的事情:

<script type="text/javascript">
console.log( {} + {} );
</script>

产生:

[object Object][object Object]

这两种情况到底发生了什么?怎么会[] , {}将这两个结果添加到 objects 数组中?

提前致谢。

最佳答案

当您使用+ operator时对于非数字,您正在执行字符串连接,因此操作数将转换为字符串。空数组 becomes an empty string因为它是对 join 的隐式调用,并且没有条目,join 返回一个空字符串;一个物体becomes "[object Object]" .

所以

console.log( [] + {} );

...归结为

console.log( String([]) + String({}) );

...归结为

console.log( "" + "[object Object]");

关于javascript - [] + {} 等于 [object Object],在 JavaScript 中?如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10461946/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com