我对javascript完全陌生,所以请耐心等待我!
我有一个传递了变量的函数,见下文:
function.getDestination(
{
destinations: [theFirstDestination, theSecondDestination],
}
我可以通过明确定义它们来传递尽可能多的变量。我还有一个数组,用于保存我想传入的值,destinationArray
。同样,我可以通过从数组中显式调用它们来传递这些变量:
function.getDestination(
{
destinations: [destinationArray[0], destinationArray[1],
}
我想要做的是遍历整个数组并将每个变量传递给函数:是否有更简单的方法来执行此操作而不是手动键入每个索引?
答案 0 :(得分:0)
如果您愿意,可以destinations: destinationArray
,但是一方的更改会影响另一方。如果你想要一个完全独立的副本:
destinations: destinationArray.slice(0)
答案 1 :(得分:0)
我认为您要做的是将数组复制到destinations
。在这种情况下,只需使用:
{
destinations: destinationArray.slice(0)
}
答案 2 :(得分:0)
代码未经测试(现在不能)但应该有效..
function getDestination(param) {
for(var i=0;i<param.destinations.length;i++) {
// do something with i (the number)
// or with param.destinations[i] (the value)
console.log(i+": "+param.destinations[i]);
}
}
虽然这也适用于对象
function getDestination(param) {
for(var it in param.destinations) if(param.destinations.hasOwnProperty(it)) {
// do something with it (the number or key)
// or with param.destinations[it] (the value)
console.log(it+": "+param.destinations[it]);
}
}
你打电话给他们中的一个:
getDestination({destinations: [theFirstDestination, theSecondDestination]});