Función en objeto en JavaScript
Con la ayuda de símbolos en objetos se pueden agregar funciones y estas funciones no participarán en la iteración. Intentémoslo. Supongamos que tenemos un objeto:
let obj = {a: 1, b: 2, c: 3};
Creemos un símbolo:
let sym = Symbol();
Escribamos en el objeto una función con una clave en forma de nuestro símbolo:
obj[sym] = function() {
console.log('!!!');
};
Al iterar el objeto nuestra función no se iterará:
for (let key in obj) {
console.log(obj[key]); // 1, 2, 3
}
Obtengamos nuestra función, pasando como clave nuestro símbolo (la misma variable):
let func = obj[sym];
func();
Se puede acortar el código:
obj[sym]();
Agregue al objeto una función que muestre la hora actual. Llame a esta función.