Массив – это хранилище данных, позволяющее обращаться к данным в виде «ключ – значение». Обычные массивы в качестве ключа используют числовые значения, ассоциативные – строковые значения. Ассоциативный массив является неким подобием коллекций и классов. Язык Javascript, как это ни странно, также поддерживает работу с ассоциативными массивами. Странным это является в основном для тех, кто помнит Javascript до появления jQuery, который очень упростил жизнь Javascript-разработчикам.
Обычные одномерные массивы в Javascript
В коде с комментариями видно, как объявлять, заполнять и обращаться к элементам массива:
//Объявление массива
mySimpleArray = new Array();
mySimpleStringArray = new Array();
//Заполнение массива
mySimpleArray[0] = 1;
mySimpleArray[1] = 2;
//Так тоже можно заполнить, тогда можно не объявлять массив заранее. Но лучше взять за привычку объявлять всегда
mySimpleArray = [0, 2,4,5];
mySimpleStringArray = ['Облако', 'Небо', 'Дождь', 'Ветер'];
//Обращение к элементу массива
alert(mySimpleArray[1]);
alert(mySimpleStringArray[1]);
//Обход массива
for (i = 0; i < mySimpleArray.length; i++) {
alert(mySimpleArray[i]);
}
Помните, что при обращении к несуществующим индексам массива вы получите сообщение об ошибке.
Ассоциативные одномерные массивы в Javascript
//Объявление массива
mySimpleAssocArray = new Array();
mySimpleAssocStringArray = new Array();
//Заполнение массива, 1 вариант
mySimpleAssocStringArray['weights'] = [1, 4, 5, 3];
mySimpleAssocStringArray['fruit'] = ['яблоко', 'груша', 'абрикос', 'слива'];
//Заполнение массива, 2 вариант
var mySimpleAssocArray = {
'fruit' : ['яблоко', 'груша', 'абрикос', 'слива'],
'weights' : [1, 4, 5, 3]
}
//Обращение к элементу массива
alert(mySimpleAssocStringArray.fruit[0]);
alert(mySimpleAssocStringArray['fruit'][0]);
for (i = 0; i < mySimpleAssocStringArray.fruit.length; i++) {
alert(mySimpleAssocStringArray.fruit[i] + ': ' + mySimpleAssocStringArray.weights[i] + 'кг');
}
for (i = 0; i < mySimpleAssocArray.fruit.length; i++) {
alert(mySimpleAssocArray.fruit[i] + ': ' + mySimpleAssocArray.weights[i] + 'кг');
}
При обращении к несуществующему индексу вы получите сообщение об ошибке.

