Operaciones con objetos en funciones en JavaScript
Vamos a añadir al objeto una función, que realizará una operación útil. Por ejemplo, encontrará la suma de los elementos del objeto.
Supongamos que tenemos un objeto:
let obj = {a: 1, b: 2, c: 3};
Creemos un símbolo:
let sym = Symbol();
Escribamos la función:
obj[sym] = function() {
};
En la función, vinculada al objeto,
this hará referencia al
objeto mismo:
obj[sym] = function() {
console.log(this); // {a: 1, b: 2, c: 3}
};
Encontremos mediante nuestra función la suma de los elementos del objeto:
obj[sym] = function() {
let sum = 0;
for (let key in this) {
sum += this[key];
}
return sum;
};
Llamemos a nuestra función, obteniendo la suma de los elementos del objeto:
let sum = obj[sym]();
console.log(sum); // mostrará 6
Dado un array:
let arr = [1, 2, 3];
Mediante el método descrito en la lección, añada al array una función, que devolverá la suma de los elementos del array.
Llame a la función creada y compruebe que encuentra correctamente la suma.
Añada al array varios elementos
con el método push.
Compruebe que la función encontrará
la suma teniendo en cuenta los nuevos elementos.