Operações com objetos em funções em JavaScript
Vamos adicionar ao objeto uma função que executará uma operação útil. Por exemplo, encontrará a soma dos elementos do objeto.
Suponha que temos o objeto:
let obj = {a: 1, b: 2, c: 3};
Vamos criar um símbolo:
let sym = Symbol();
Vamos registrar a função:
obj[sym] = function() {
};
Na função, vinculada ao objeto,
this irá se referir ao
próprio objeto:
obj[sym] = function() {
console.log(this); // {a: 1, b: 2, c: 3}
};
Vamos encontrar usando nossa função a soma dos elementos do objeto:
obj[sym] = function() {
let sum = 0;
for (let key in this) {
sum += this[key];
}
return sum;
};
Vamos chamar nossa função, obtendo a soma dos elementos do objeto:
let sum = obj[sym]();
console.log(sum); // exibirá 6
Dado o array:
let arr = [1, 2, 3];
Pelo método descrito na lição, adicione ao array uma função que retornará a soma dos elementos do array.
Chame a função criada e certifique-se de que ela encontra a soma corretamente.
Adicione ao array vários elementos
usando o método push.
Certifique-se de que a função encontrará
a soma levando em conta os novos elementos.