keep objects in an array

Advertisements

How can I store objects in an array so that I can call a method for each object in a loop.

How I would like the result to be:

[[obj1, obj2],[obj3, obj4]].foreach((firstObj, secondObj) => {
   firstobj.search();
   secondObj.search()
})

And the result will be as follows:

Iteration 1: obj1.search(); obj2.search();

iteration 2: obj3.search(); obj4.search();

Any advice is welcome

>Solution :

Use array destructuring in the argument list to "unpack" the pairs to 2 free variables:

[[obj1, obj2], [obj3, obj4]].forEach(([o1, o2]) => {
   o1.search();
   o2.search();
});

This is equivalent to doing (and indeed, this is what Babel compiles the above to)

[
  [obj1, obj2],
  [obj3, obj4]
].forEach((_ref) => {
  let [o1, o2] = _ref;
  o1.search();
  o2.search();
});

Leave a ReplyCancel reply