Darbības ar objektiem funkcijā JavaScript
Pievienosim objektam funkciju, kas veiks kādu noderīgu darbību. Piemēram, atradīs objekta elementu summu.
Pieņemsim, ka mums ir objekts:
javascriptlet obj = {a: 1, b: 2, c: 3};
Izveidosim simbolu:
javascriptlet sym = Symbol();
Ierakstīsim funkciju:
javascriptobj[sym] = function() {
};
Funkcijā, kas piesaistīta objektam,
this norādīs uz pašu
objektu:
javascriptobj[sym] = function() {
console.log(this); // {a: 1, b: 2, c: 3}
};
Atradīsim ar mūsu funkcijas palīdzību objekta elementu summu:
javascriptobj[sym] = function() {
let sum = 0;
for (let key in this) {
sum += this[key];
}
return sum;
};
Izsaucam mūsu funkciju, iegūstot objekta elementu summu:
javascriptlet sum = obj[sym]();
console.log(sum); // izvadīs 6
Задание 1
Dots masīvs:
javascriptlet arr = [1, 2, 3];
Nodarbībā aprakstīto metodi pievienojiet masīvam funkciju, kas atgriezīs masīva elementu summu.
Задание 2
Izsauciet izveidoto funkciju un pārliecinieties, ka tā pareizi atrod summu.
Задание 3
Pievienojiet masīvam vairākus elementus
ar metodes push palīdzību.
Pārliecinieties, ka funkcija atradīs
summu, ņemot vērā jaunos elementus.