Funktion i objekt i JavaScript
Med symboler kan man tilføje funktioner til objekter, og disse funktioner vil ikke deltage i opslag. Lad os prøve. Lad os sige, at vi har et objekt:
let obj = {a: 1, b: 2, c: 3};
Lad os oprette et symbol:
let sym = Symbol();
Lad os skrive en funktion til objektet med en nøgle i form af vores symbol:
obj[sym] = function() {
console.log('!!!');
};
Ved opslag af objektet vil vores funktion ikke blive vist:
for (let key in obj) {
console.log(obj[key]); // 1, 2, 3
}
Lad os hente vores funktion ved at give vores symbol (den samme variabel) som nøgle:
let func = obj[sym];
func();
Koden kan forkortes:
obj[sym]();
Tilføj en funktion til objektet, som udskriver den aktuelle tid. Kald denne funktion.