Funktsioon objekti sees JavaScriptis
Kasutades symboleid saab objektidesse lisada funktsioone ja need funktsioonid ei osale läbimängimises. Proovime seda. Olgu meil objekt:
let obj = {a: 1, b: 2, c: 3};
Loome sümboli:
let sym = Symbol();
Kirjutame objekti funktsiooni võtmega meie sümboli kujul:
obj[sym] = function() {
console.log('!!!');
};
Objekti läbimängimisel meie funktsioon ei läbimängita:
for (let key in obj) {
console.log(obj[key]); // 1, 2, 3
}
Saame oma funktsiooni, edastades võtmena meie sümboli (sama muutuja):
let func = obj[sym];
func();
Koodi saab lühendada:
obj[sym]();
Lisage objekti funktsioon, mis kuvab praeguse aja. Kutsuge see funktsioon välja.