Введите ваш адрес почты


sdcvoy.ru
Понравился сайт? Поделись с друзьями!
Главная » Javascript » Obekty-v-javascript-kak-associativnye-massivy

Объекты в JavaScript как ассоциативные массивы

Перед тем как начать рассказывать про объекты в JavaScrript, давайте попробуем разобраться что такое ассоциативный массив.


Ассоциативный массив — абстрактный тип данных, в котором можно хранить любые данные. Такие данные хранятся в формате ключ-значение.


Так вот благодаря объектам мы можем хранить данные в виде массивов. Синтаксис создания объектов имеет следующий вид:

имя_объекта = new Object();

// или так

имя_объекта = {}; // пустые фигурные скобки

Предпочтительнее, на мой взгляд второй способ так как он намного проще. Добавление свойств в объект или ассоциативного массива может происходить разными способами:

имя_объекта = {}; 
имя_объекта.свойство_объекта=значение;

// или

имя_объекта = {}; 
имя_объекта['свойство_объекта']=значение;

// или

имя_объекта = {
'свойство_объекта':значение,
};

Второй и третий вариант предпочтительнее, чем первый. Почему? Потому, что вы не сможете с помощью этого способа создать ключ с названием из двух слов:

var obj={};
obj.имя пользователя = "Admin"; // выведет ошибку

// а другим способом будет всё верно

var obj={};
obj['имя пользователя'] = "Admin";  
alert( obj['имя пользователя']); // выведет Admin

Вообще для обращения к свойству или ключу используют квадратные скобки (объект[key]).

В качестве ключа может быть другой объект. Также можно удалить какое-либо свойство из объекта с помощью оператора delete:

var obj={
userName: "Admin",
age:31,
};
delete obj.age;
alert(obj.age); // undefined

Можно проверить есть ключ в объекте с помощью оператора in:

var obj={
userName: "Admin",
'age': 31,
};
delete obj.age;
alert('age' in obj); // выведет значение false
alert('userName' in obj); // выведет значение true

Запомните что если мы указываем ключи внутри объекта, то ставится не точка с запятой, а запятая:

var obj={key1: value1, key2: value2, ... , keyN: valueN };

Постарайтесь не ошибаться, хотя побольше практики и всё будет отлично!



наверх