gpt4 book ai didi

javascript - 我无法理解此 JavaScript 语句中的括号

转载 作者:行者123 更新时间:2023-11-30 13:35:38 24 4
gpt4 key购买 nike

我无法理解下面 JavaScript 语句中的括号:

({go_go: 'go'});

这里的()是什么意思?

我知道函数中的 () 意味着这个函数是匿名的。就像下面的代码一样。对吗?

(function () {
alert('something');
})();

谢谢!

最佳答案

在这个文字示例中,它们没有任何用途,但通常它们用于包含表达式 - 具体来说,用于确保将括号的内容作为表达式而不是语句来读取。

当人们使用 eval 反序列化 JSON 格式的数据时,您会看到类似的情况。因此,例如,他们可能会收到以下形式的字符串:

var s = '{"go_go": "go"}';

...并使用它反序列化它:

var o = eval('(' + s + ')');

这是针对某些问题的旧解决方法,但您最好使用适当的 JSON 解析库,例如 Crockford's github page 中列出的三个库中的任何一个。 . (Crockford 是 JSON 的发明者。)其中有一个执行一些正则表达式来检测各种格式错误的 JSON 内容,然后使用 eval,另外两个不使用 eval 完全没有。 (在处理来自不受信任来源的 JSON 时,我绝不会使用 eval。)

关于javascript - 我无法理解此 JavaScript 语句中的括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5014418/

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