¿Cómo puedo almacenar objetos en una matriz para poder llamar a un método para cada objeto en un bucle?
Como me gustaria que fuera el resultado:
[[obj1, obj2],[obj3, obj4]].foreach((firstObj, secondObj) => { firstobj.search(); secondObj.search() })Y el resultado será el siguiente:
Iteración 1: obj1.search(); obj2.buscar();
iteración 2: obj3.search(); obj4.buscar();
Cualquier consejo es bienvenido
Use la desestructuración de matrices en la lista de argumentos para "desempaquetar" los pares en 2 variables libres:
[[obj1, obj2], [obj3, obj4]].forEach(([o1, o2]) => { o1.search(); o2.search(); });Esto es equivalente a hacer (y de hecho, esto es para lo que Babel compila lo anterior )
[ [obj1, obj2], [obj3, obj4] ].forEach((_ref) => { let [o1, o2] = _ref; o1.search(); o2.search(); });Puede desempaquetar su matriz en dos variables separadas en los argumentos de devolución de llamada como este.
[[obj1, obj2],[obj3, obj4]].forEach([firstObj, secondOb] => { firstobj.search(); secondObj.search() })O si no conoce el tamaño de cada matriz anidada, puede usar flat para aplanar su matriz en una y luego ejecutar su función en forEach.
[[obj1, obj2],[obj3, obj4]].flat().forEach(obj => { obj.search(); })