Аперацыі з аб'ектамі ў функцыі ў 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.
Пераканайцеся, што функцыя будзе знаходзіць
суму з улікам новых элементаў.