Был неприятно удивлен таким прискорбным фактом, что работают данные конструкции весьма своеобразно и непредсказуемо.
Есть массив начинающийся не с 0, а например 2:
Так вот перебор с помощью конструкций for each и for in такого массива начнется, правильно с 4 :). Вернее не факт, что в следующий раз с 4 может конечно и с 3 начать(хотя есть смутные подозрение, что закономерность есть !). В общем, как ему захочется.
Как объяснили знающие люди, это все зависит от последовательности заполнения массива. Хотя массив у меня заполнялся весьма последовательно.
В итоге вернулся к старому доброму for
Осадочек остался однако.
З.Ы. в regexp конструкции /\bкириллица\b/ работать не будет. С латинским алфавитом \b работает.
З.Ы.Ы если взять массив с начальным ключем 0 то перебор всегда идет упорядоченный.
UPD
Уважаемый юзер pixelcube объяснил в комментариях в чем хитрость.
Есть массив начинающийся не с 0, а например 2:
2 => object ;
3 => string;
4 => object;
Так вот перебор с помощью конструкций for each и for in такого массива начнется, правильно с 4 :). Вернее не факт, что в следующий раз с 4 может конечно и с 3 начать(хотя есть смутные подозрение, что закономерность есть !). В общем, как ему захочется.
Как объяснили знающие люди, это все зависит от последовательности заполнения массива. Хотя массив у меня заполнялся весьма последовательно.
В итоге вернулся к старому доброму for
Осадочек остался однако.
З.Ы. в regexp конструкции /\bкириллица\b/ работать не будет. С латинским алфавитом \b работает.
З.Ы.Ы если взять массив с начальным ключем 0 то перебор всегда идет упорядоченный.
UPD
Уважаемый юзер pixelcube объяснил в комментариях в чем хитрость.