Funkcija objektā JavaScript
Izmantojot simbolus, objektos var pievienot funkcijas, un šīs funkcijas nepiedalīsies atkārtotā uzskaitīšanā. Pamēģināsim. Pieņemsim, ka mums ir objekts:
let obj = {a: 1, b: 2, c: 3};
Izveidosim simbolu:
let sym = Symbol();
Ierakstīsim objektā funkciju ar atslēgu mūsu simbola veidā:
obj[sym] = function() {
console.log('!!!');
};
Atkārtoti uzskaitot objekta īpašības, mūsu funkcija netiks iekļauta:
for (let key in obj) {
console.log(obj[key]); // 1, 2, 3
}
Iegūsim mūsu funkciju, kā atslēgu padodot mūsu simbolu (to pašu mainīgo):
let func = obj[sym];
func();
Kodu var saīsināt:
obj[sym]();
Pievienojiet objektam funkciju, kas izvadīs pašreizējo laiku. Izsauciet šo funkciju.