我有一个“ Sorteio”类型的对象,并且在其中有一个“ Resultado”类型对象的向量,尤其是6个Resultados。我以这种方式实例化它们:
saveSorteio() {
var data = {
loteria: this.sorteio.loteria,
resultados: [
{
valor: this.sorteio.resultados[0].valor,
animal: this.sorteio.resultados[0].animal
},
{
valor: this.sorteio.resultados[1].valor,
animal: this.sorteio.resultados[1].animal
},
/* ... */
]
};
}
还有另一种立即实例化6的方法吗?还是需要继续按索引调用索引?
答案 0 :(得分:0)
您可以使用#array.map()
来创建一个提取以下属性的数组:
saveSorteio() {
var data = {
loteria: this.sorteio.loteria,
resultados = this.sorteio.resultados.map(({valor, animal}) => ({valor, animal}))
/* ... */
};
}
例如:
sorteio = {
resultados: [
{valor: "v1", animal: 'a1', somethingelse:"else"},
{valor: "v2", animal: 'a2', somethingelse:"else"},
{valor: "v3", animal: 'a3', somethingelse:"else"}
]
}
let newArray = sorteio.resultados.map(({valor, animal}) => ({valor, animal}))
console.log(newArray)
答案 1 :(得分:0)
欢迎使用SO
尝试:)
let resultados =
[
{
valor: 1,
animal: "dog"
},
{
valor: 2,
animal: "cat"
},
{
valor: 3,
animal: "bird"
},
]
let data = {loteria: "somedata",
resultados: []
}
let i = 0
resultados.forEach(function(element) {
data.resultados.push(resultados[i])
i++
});
console.log(data)