Операции с объектами в функции в JavaScript
Давайте добавим в объект функцию, которая будет выполнять некоторую полезную операцию. Например, будет находить сумму элементов объекта.
Пусть у нас есть объект:
let obj = {a: 1, b: 2, c: 3};
Создадим символ:
let sym = Symbol();
Запишем функцию:
obj[sym] = function() {
};
В функции, привязанной к объекту
this
будет указывать на сам
объект:
obj[sym] = function() {
console.log(this); // {a: 1, b: 2, c: 3}
};
Найдем с помощью нашей функции сумму элементов объекта:
obj[sym] = function() {
let sum = 0;
for (let key in this) {
sum += this[key];
}
return sum;
};
Вызовем нашу функцию, получив сумму элементов объекта:
let sum = obj[sym]();
console.log(sum); // выведет 6
Дан массив:
let arr = [1, 2, 3];
Описанным в уроке способом добавьте в массив функцию, которая будет возвращать сумму элементов массива.
Вызовите созданную функцию и убедитесь, что она верно находит сумму.
Добавьте в массив несколько элементов
с помощью метода push
.
Убедитесь, что функция будет находить
сумму с учетом новых элементов.