从数组javascript中提取元素

时间:2014-04-11 13:34:48

标签: javascript arrays loops

我对javascript完全陌生,所以请耐心等待我!

我有一个传递了变量的函数,见下文:

function.getDestination(
    {
      destinations: [theFirstDestination, theSecondDestination],
    }

我可以通过明确定义它们来传递尽可能多的变量。我还有一个数组,用于保存我想传入的值,destinationArray。同样,我可以通过从数组中显式调用它们来传递这些变量:

function.getDestination(
    {
      destinations: [destinationArray[0], destinationArray[1],
    }

我想要做的是遍历整个数组并将每个变量传递给函数:是否有更简单的方法来执行此操作而不是手动键入每个索引?

3 个答案:

答案 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]});