Я не понимаю. Что заставляет вас думать, что 0, затем 4, затем 2, в любой форме или форме «по порядку»?
Однако, очевидно, что вы хотите сохранить номер и строку вместе, в указанном вами порядке.
Ваша ошибка, если вы простите меня за то, возможно, звучание немного резок, что вы, кажется, думаете, что вы можете использовать индексы или имена элементов, чтобы быть как средство для доступа к данным и часть данных сам.
Вы не можете, и вы не должны.Индекс - это индекс, имя - это имя, а данными являются данные [1].
Вот две реализации хранения ваших чисел и строк вместе:
var pairs = [
[0, "zero"],
[4, "four"],
[2, "two"]
];
for (var index in pairs) {
alert(pairs[index][0] + ": " + pairs[index][1]);
};
Для этого, я держу пары чисел и строк вместе в массивах свои собственные: числа в позиции 0, строки в позиции 1. Я храню эти массивы в pairs
.
Затем я перебираю массив с параметром for/in, который на каждой итерации дает мне индекс моего массива pairs
.
я затем использовать этот индекс для доступа к правой суб-массив в pairs
, и получить номер с позиции 0 и строку с позиции 1.
var pairs = [
{number: 0, string: "zero"},
{number: 4, string: "four"},
{number: 2, string: "two"}
];
for (var index in pairs) {
alert(pairs[index].number + ": " + pairs[index].string);
};
Это один работает точно так же, за исключением хранения пары в массивах, я храню их в объектах.
У этого есть дополнительный бонус лучшей читаемости внутри цикла for: pairs[index][0]
и pairs[index][1]
на самом деле не дают ясного смысла. Это говорит нам не что иное, как «о парах с данным индексом, получить пункты 0 и 1».
Однако pairs[index].number
и pairs[index].name
намного понятнее: «пары с данным индексом, дайте мне номер и имя».
_
Сноска:
[1a] Числа является числом: мой номер банковского счета только что: средство для идентификации моего банковского счета. Он не передает никакого значения моего имени, моего ПИН-кода или баланса на моем счете - все атрибуты, которые будут квалифицироваться как данные, принадлежащие моему банковскому счету.
[1b] Имя:: Меня зовут только имя. Когда вы говорите обо мне, вы можете использовать мое имя, чтобы сослаться на меня, чтобы другие знали, о ком вы говорите. Мое имя не передает никакой информации о моих хобби, моем SSN или о том, что у меня есть автомобиль - все атрибуты, которые могли бы квалифицироваться как данные, которые описывали бы некоторые аспекты меня. (Однако, по договоренности, вы часто можете рассказать пол человека по их имени)
На самом деле это объект. –
Как я могу работать с массивом и поддерживать порядок? – cecilli0n
Как сказано здесь, объект не является массивом. Узнайте, что такое [Array] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array) и [Object] (https://developer.mozilla.org/ en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) находятся в Javascript. – Xotic750