多次执行函数顺序替换部分参数

时间:2017-11-20 18:35:08

标签: javascript arrays function methods

我有一个方法(exampleObj.method),它接受一个对象和一个函数的参数。如下所示:

exampleObj.method({
        name1: 'string1',
        name2: 'string2',
        name3: 'string3',
        name4: {
            array1: ['item1a', 'item1b', 'item1c'],
            array2: ['item2a']
        },
        name5: exampleObj.method2
    },
    function exampleFunc(arg1, arg2) {
        // function logic here
    }
};

我想要实现的是多次执行该方法,每次用arrayCollection变量中的不同数组替换array1。

var arrayCollection = [
    ['item1d', 'item1e', 'item1f'],
    ['item1g', 'item1h', 'item1i'],
    ['item1j', 'item1k', 'item1l']
];

我知道我可以遍历每次执行方法的arrayCollection数组,或者也许使用forEach来实现相同的目的。我正在努力的是每次执行方法时都替换array1的值。

当我搜索答案时,似乎array.map可能是一个选项。我不知道如何使用它来改变特定的array1值。

任何建议都会非常感谢!

1 个答案:

答案 0 :(得分:0)

for(const array1 of arrayCollection)
  exampleObj.method({
        name1: 'string1',
        name2: 'string2',
        name3: 'string3',
        name4: {
            array1,
            array2: ['item2a']
        },
        name5: exampleObj.method2
    },
    function exampleFunc(arg1, arg2) {
        // function logic here
    }
  });