gpt4 book ai didi

javascript - 如果其中一个参数称为 `arguments` ,我可以获得 "arguments"对象吗?

转载 作者:行者123 更新时间:2023-11-30 09:01:53 29 4
gpt4 key购买 nike

以下代码将打印1:

(function (arguments) {
console.log(arguments);
}(1, 2));

实际上,arguments 对象已被覆盖。是否可以恢复函数范围内的默认 arguments 对象?

最佳答案

马特在上面的评论中说“不”,我认为他可能是对的;但你可以这样写:

(function f(arguments) {
console.log(f.arguments);
}(1));

(至少在 Firefox 中是这样;我没有尝试过其他浏览器,但我相信这是标准行为)。但是,如果您出于某种原因不愿意重命名函数的参数,那么我猜您可能也不愿意给函数命名?

(注意,上面仍然是函数表达式,不是声明。您仍然不能在自身之外引用 f。只是它不再是匿名函数表达式。)

关于javascript - 如果其中一个参数称为 `arguments` ,我可以获得 "arguments"对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8597339/

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