¿En TypeScript hay alguna manera de pasar un parámetro a un método por referencia?
Tengo un método que recibe parámetros y en este método hay cálculos que cambian el valor de los parámetros. Al regresar del método, los parámetros continúan a otros métodos para más cálculos.
¿Hay alguna manera de pasar un parámetro a un método por referencia o la única manera es unirme los parámetros a un objeto y devolverlos?
Respuesta #1
Con JavaScript y TypeScript, puedes pasar un objeto por referencia, pero no un valor por referencia. Por lo tanto, encaja tus valores en un objeto.
Así que en lugar de:
function foo(value1: number, value2: number) {
value1++;
value2++;
}
Hacer :
function foo(model: {property1: number; property2: number}) {
model.property1++;
model.property2++;
// Not needed but
// considered good practice.
return model;
}
const bar = { property1: 0, property2: 1 };
foo(bar);
console.log(bar.property1) // 1
console.log(bar.property2) // 2
Ver la demostración completa en TS Playground
