我试图使用以下方式从对象数组中获取最后一个对象,
const rowLen = previous_data.High.length;
var temp = previous_data.High.map((object,i) => {
if (rowLen === i + 1) {
return object;
}
});
然后我想填充下一个对象的值,所以,我喜欢
temp [0] .keyname。
现在,虽然获得临时性,它返回我的对象数组,所以在第二次我得到
[ 0: undefined, 1: {key:value}]
所以,我不明白为什么它返回数组以及前一个我只想要最后一个对象。
Map为数组的每次迭代返回一个值。如果从map中的回调函数返回一个值,那么该值将在相应的索引处返回,否则将返回undefined,这是您可以看到的
由于您只需要数组中的最后一个值,因此您只需使用slice
即可
var temp = previous_data.High.slice(-1);
因为map要返回一个数组,所以当您想要更改原始数组而不选择元素时,可以使用map。像这样做。 previous_data.High [previous_data.High.length -1]。这将为您提供最后一个元素。
Destructuring assignment允许您分配变量,交换属性,忽略属性,分配默认值,访问任意数量的属性。
let arrObj = [{
key0: "value0",
key1: "value1",
key2: "value2",
key3: "value3"
},
[1, 2, 3],
{
key4: "value4"
}];
let [{key0:K0,key1:K1,key2:K2,key3:K3},[a, b, c],{key4:last}] = arrObj;
console.log(last);
console.log(c);
console.log(K1);