Javascript-Objektwertvariable [Duplikat]
Nov 20 2020
Ich möchte einige Berechnungen in einem js-Objekt durchführen. Ist das möglich?
foo: [
{
value: 1000
target:50
process: (target*value)/100
},
{
value: 500
target:100
process: (target*value)/100
}]
Der process
Schlüssel sollte aus value
und berechnet werden target
. Gibt es einen Weg dazu? Js
Antworten
1 elclanrs Nov 20 2020 at 02:56
Sie können process
einen Getter machen:
const foo = [
{
value: 1000,
target: 50,
get process() {
return (this.target * this.value) / 100;
}
},
{
value: 500,
target: 100,
get process() {
return (this.target * this.value) / 100;
}
}
];
Und dann verwenden Sie den Eigenschaftszugriff:
console.log(foo[0].process); //=> 500
console.log(foo[1].process); //=> 500
IsraGab Nov 20 2020 at 02:58
Der Prozess sollte eine Funktion oder ein Accessor sein:
var foo= [
{
value: 1000,
target:50,
process() { return (this.target*this.value)/100}
},
{
value: 500,
target:100,
process() { return (this.target*this.value)/100}
}]
// use it like this:
console.log(foo[0].process()); //=> 500
console.log(foo[1].process()); //=> 500