Я перебираю массив в MooTools, но вижу дополнительные элементы при переборе массива с использованием сокращенного цикла for..in
. Он отлично работает, когда я использую обычный цикл for
. Это проблема с MooTools, загрязняющим глобальное пространство имен, или я здесь что-то не так делаю?
Существует функция createTabs()
, которая перебирает массив и создает вкладку для каждого значения в массиве:
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);
}
}
Это вывод console.log(i)
:
0
1
$family
each
clean
associate
link
contains
extend
getLast
getRandom
include
combine
erase
empty
flatten
hexToRgb
rgbToHex
toJSON
Я понимаю первые 2 индекса, но откуда остальные?
Редактировать : Спасибо за быстрые ответы Chetan и k Prime. Это имеет смысл, и добавление Array.each
от MooTools - намного более чистый способ повторения!
Теперь выглядит намного лучше:
myTabs.each(function(item) {
var tab = new Tab(item[0], item[1]);
console.log(item);
});