Классические и ассоциативные массивы в Javascript

Массив – это хранилище данных, позволяющее обращаться к данным в  виде «ключ – значение». Обычные массивы в качестве ключа используют числовые значения, ассоциативные – строковые значения. Ассоциативный массив является неким подобием коллекций и классов. Язык 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] + 'кг');
        }

 

При обращении к несуществующему индексу вы получите сообщение об ошибке.

 


Комментариев нет »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment






MarkiMarta.ru. Записки отца-программиста" с 2009 г.
Категория информационной продукции 18+
Яндекс.Метрика