gpt4 book ai didi

javascript - 将参数作为数组传递

转载 作者:行者123 更新时间:2023-11-28 15:42:49 25 4
gpt4 key购买 nike

我使用了 preload() 方法:

preload('img-1','img-2',...,'img-num')

效果很好。但现在我想将所有参数放入一个数组中,所以现在会像这样:

var myArray = ['img-1','img-2',...,'img-num'];

preload(myArray)

但显然这是错误的方法,因为预加载是加载用命令分隔的参数,而不是组合所有参数的数组。

所以,我非常想知道是否有什么可做的?

最佳答案

您可以使用 preload.apply (apply 可从 Function 对象的 Function.prototype.apply 获得),它可以将数据数组作为参数展开,如下所示

preload.apply(this, myArray);

例如,

function printer(first, second, third) {
console.log(first, second, third);
}

printer(1, 2, 3);
# 1 2 3
printer([1, 2, 3]);
# [1, 2, 3] undefined undefined
printer.apply(this, [1, 2, 3]);
# 1 2 3

由于参数的数量可能会有所不同,人们通常使用 arguments特殊对象。

您可以在函数内以数组形式获取参数列表,如下所示

function printer() {
console.log(Array.prototype.slice.call(arguments));
}

printer(1, 2, 3);
# [ 1, 2, 3 ]
printer([1, 2, 3]);
# [ [ 1, 2, 3 ] ]
printer.apply(this, [1, 2, 3]);
# [ 1, 2, 3 ]

关于javascript - 将参数作为数组传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23290129/

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