Iteración de matrices de Javascript utilizando for..in con MooTools incluido
Estoy iterando sobre una matriz en MooTools pero veo elementos adicionales al iterar a través de la matriz usando la taquigrafíafor..in
lazo. Funciona bien cuando uso el regularfor
lazo. ¿Es este un problema con MooTools contaminando el espacio de nombres global o estoy haciendo algo mal aquí?
Hay uncreateTabs()
función que recorre una matriz y crea una pestaña para cada valor de la matriz:
function createTabs() {
var myTabs = [["First", "a.png"], ["Second", "b.png"]];
for(var i in myTabs) {
var tab = new Tab(myTabs[i][0], myTabs[i][1]);
console.log(i);
}
}
Esta es la salida deconsole.log(i)
:
0
1
$family
each
clean
associate
link
contains
extend
getLast
getRandom
include
combine
erase
empty
flatten
hexToRgb
rgbToHex
toJSON
Entiendo los primeros 2 índices, pero ¿de dónde viene el resto?
Editar: Gracias por las rápidas respuestas de Chetan y k Prime. Eso tiene sentido, y laArray.each
Además, MooTools es una forma mucho más limpia de iterar.
Se ve mucho mejor ahora:
myTabs.each(function(item) {
var tab = new Tab(item[0], item[1]);
console.log(item);
});