JavaScript: как вернуть модифицированную функцию с циклом forEach или for?

У меня есть свойство name items: который ждет array список. Нормальная и работающая реализация этого блока кода ниже;

// This usage works perfectly with `getFirstTest()` function
// And creates a list of Array fine!
harness.start(
    {
        group: 'UI Tests',
        testClass: Siesta.Test.ListClass,
        items: [
            {
              group: 'First Group',
              items: [
                  getFirstTest('Foo'),
                  getFirstTest('Bar'),
                  getFirstTest('Alpha'),
                  getFirstTest('Beta'),
                  getFirstTest('Zet')
              ]
            }
        ]
    }
);

но, как вы заметите, есть много итерационных утверждений, и поэтому я попытался использовать forEach а также for циклы, чтобы заявить getFirstTest() функционировать как динамический, но я не могу сделать array список, как указано выше, это не выбросить ни одной проблемы, но не может создать список!

Также мне нужно иметь возможность установить несколько parameters на getFirstTest функция:

например: getFirstTest('Foo', 'SecondParam')

harness.start(
    {
        group: 'UI Tests',
        testClass: Siesta.Test.ListClass,
        items: [
            {
              group: 'First Group',
              items: this.firstGrpSubmodules
            }
        ]
    }
);

function firstGrpSubmodules () {
    let implementedCases = [
        'Foo', 'Bar', 'Alpha', 'Beta', 'Zet'
    ];

    // I've tried several ways to achive but couldn't
    // Usage 1: The for loop
    // for (let i=0; i<implementedCases.length; i++) {
    //       let submodules = implementedCases[i];
    //
    //       getFirstTest(submodules);
    // }

    // Usage 2: forEach
    // implementedCases.forEach(function(submodule) {
    //     getFirstTest(submodule);
    // });
}

Чего мне здесь не хватает и как я могу достичь второй реализации? Заранее спасибо!

1 ответ

Решение

Использование Array.prototype.map:

harness.start({
  group: 'UI Tests',
  testClass: Siesta.Test.ListClass,
  items: [
    {
      group: 'First Group',
      items: ['Foo', 'Bar'].map(getSalesTest),
    }
  ]
});
Другие вопросы по тегам