gpt4 book ai didi

javascript - 使用数组定义 Javascript 参数名称

转载 作者:行者123 更新时间:2023-12-03 10:51:58 25 4
gpt4 key购买 nike

我正在寻找一种通过数组定义 javascript 函数参数的方法,以便例如以下代码可以工作。可能吗?

args = ["foo", "bar"]
func = function(???) { //not sure what (if anything) could go here to make it work
console.log(foo)
console.log(bar)
}
func (5, "good times") // logs "5" and "good times"

编辑:提供的解决方案很好,但不能解决问题,因为保留特定名称很重要。我有一个带有非常长的参数列表的函数,我宁愿将它们定义为数组,然后在实际的函数定义中。

最佳答案

在函数内部,参数可通过名为 arguments 的特殊对象获得:

function magic() {
for (var i = 0; i < arguments.length; ++i)
console.log(arguments[i]);
}

magic("hello", "world"); // two console entries, "hello" and "world"

arguments 对象类似于一个数组,但又有所不同。如果性能很重要,那么谨慎使用它很重要,因为该对象具有一些不寻常的属性,会给现代 JavaScript 优化器带来问题。

在进行函数调用后不可能为参数命名,但(如果您确实愿意)您可以创建一个对象并将参数复制到其中:

function weird() {
var parameters = {};
for (var i = 0; i < arguments.length; ++i)
parameters["arg" + i] = arguments[i];
// ...
}

关于javascript - 使用数组定义 Javascript 参数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28396919/

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