const small = { a: 1, func: function(b, c, d) { return this.a + b + c + d; }, }; const large = { a: 5, }; small.func(2, 3, 5);Necesito acceder a: 5 de objeto grande a objeto pequeño. Actualmente, small.func (2,3,5) está dando 11 como salida. Necesito obtener 15 como salida.
Puede usar la call o apply aquí como:
const result = small.func.call(large, 2, 3, 5); Lo que significa la declaración anterior es que está tomando la función (o puede decir tomando prestada) la función small.func y aplicándola en el contexto de un objeto large con el argumento 2, 3, 5.
const small = { a: 1, func: function(b, c, d) { return this.a + b + c + d; }, }; const large = { a: 5, }; const result = small.func.call(large, 2, 3, 5); // const result = small.func.apply(large, [2, 3, 5]); console.log(result);Como esto-
function func(b, c, d) { return this.a + b + c + d; } const small = { a: 1, }; const large = { a: 5, }; func.call(large, 2,3, 5)