问题描述
var test_array = [0.1,2.1,0.7,5.4,3.2,1.6];
我基本上想获取数组中的前 2 个值,将它们放入 2 个单独的变量中,然后继续下一步,如下所示:
var test_array = [0.1,1.6];
test_array.sort();
for (let i=0;i< test_array.length -1; i++) {
var j = i + 1;
var pt_one = test_array[i];
var pt_two = test_array[j];
console.log("pt_one = " + pt_one);
console.log("pt_two = " + pt_two);
}
有没有更有效的方法来做到这一点?可以以某种方式使用 forEach() 方法吗?
解决方法
它可能不会好得多,但无论如何你的长度是不正确的。我以为您可能希望一次看到两个增量:
let test_array = [0.1,2.1,0.7,5.4,3.2,1.6,10,100],pt_one,pt_two;
test_array.sort((a,b)=>a-b);
for(let i=0,n=1,l=test_array.length; i<l; i+=2,n+=2){
pt_one = test_array[i]; pt_two = test_array[n];
console.log('pt_one = '+pt_one); console.log('pt_two = '+pt_two);
}
我注意到你也会遇到这种问题。
,您可以尝试使用 forEach
:
test_array.forEach((n,i,arr) => {
var [pt_one,pt_two] = test_array.slice((arr.length - i) * -1);
})