我有一个名为targetPercentage的数组。
targetPercentage = [0,33,77,132]
如何将其分类为长度为2但包含先前值的块? 如果可能的话,也可以将其放入具有各自属性的Javascript对象数组中。
示例输出:
[0,33]
[33,77]
[77,132]
通过将其制成对象数组来输出示例:
thresholds : [ {from:0,to:33},{from:33,to:77},{from:77,to:132} ]
与此question类似,但包含先前的值。
答案 0 :(得分:1)
您可以使用Array.from
从头开始创建数组,并在每次迭代时访问第i
个元素和第i + 1
个元素来创建对象:
const targetPercentage = [0,33,77,132];
const result = Array.from(
{ length: targetPercentage.length - 1 },
(_, i) => ({ from: targetPercentage[i], to: targetPercentage[i + 1] })
);
console.log(result);
或者,如果您想要一个数组数组:
(_, i) => ([ targetPercentage[i], targetPercentage[i + 1] ])
答案 1 :(得分:0)
const targetPercentage = [0, 33, 77, 132]
const thresholds = []
for (let i = 0; i < targetPercentage.length - 1; i++) {
let range = {
from: targetPercentage[i],
to: targetPercentage[i + 1]
}
thresholds.push(range)
}
答案 2 :(得分:0)
array function-slice(initial,count)-将给定的数组切成3个块,每个块2个元素。
临时数组将具有[0,33],[33,77],[77,132]
var i,j,temparray,chunk = 2;
result=[];for (i=0,j=targetPercentage.length; i<j-1; i++) {
temparray = targetPercentage.slice(i,i+chunk);
result.push({from:temparray[0],to:temparray[1]});
}
console.log(result);
答案 3 :(得分:0)
您可以尝试以下方法:
AWS_SECRET_ACCESS_KEY