Объекты в JavaScript. Часть 4

Объекты в JavaScript

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

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

В общем, в объекте может храниться масса всего и нужного. А как бы нам пройтись за раз по всему этому добру? Для этого JavaScript предлагает уже знакомый нам оператор in. Напомню, с помощью данного оператора мы можем проверить наличие свойства в объекте. Теперь попробуем использовать его для того, чтобы пробежаться по свойствам объекта.

Для начала взглянем на синтаксис необходимой нам конструкции:

for(var key in object){
    // код
}

Как вы заметили, мы используем цикл for, но в незнакомом нам виде. Именно в таком виде мы и можем перебрать все свойства массива. Переменная key здесь условна и в нее на каждой итерации цикла попадает имя свойства объекта. После оператора in указывается название объекта, по свойствам которого мы проходимся в цикле. И практический пример:

var names = {
    name1: 'John',
    name2: 'Jane',
    hi: function(param){
        console.log(param);
    }
};
for(var prop in names){
    console.log('Имя свойства: ' + prop + ', Значение: ' + names[prop]);
}

Как видим, мы перебрали все свойства объекта и вывели наименование свойства и его значение, в том числе и функцию (метод), которая сохранена в свойстве.

Как вы понимаете, мы не просто можем перебирать свойства, но и что делать с их значениями. Например, добавим к значению свойства, если это не функция, фамилию Doe. Ну а если это функция, тогда удалим это свойство из объекта:

var names = {
    name1: 'John',
    name2: 'Jane',
    hi: function(param){
        console.log(param);
    }
};
console.log(names);
for(var prop in names){
    if(prop !== 'hi'){
        names[prop] += ' Doe';
    }else{
        delete names[prop];
    }
}
console.log(names);

И результат в консоли:

Очень удобно, не так ли? На этом мы завершим текущую статью. Если вы хотите больше узнать о JavaScript, тогда рекомендую обратить свое внимание на уроки по JavaScript и отдельный курс по языку JavaScript. Удачи!

Курс по JavaScript: основы

Изучите JavaScript с нуля до результата!

Смотреть курс

Метки:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree