首页 > 解决方案 > 根据顺序从数组中获取值

问题描述

假设我有一个这样的数组:

var test_array = [0.1, 2.1, 0.7, 5.4, 3.2, 1.6];

我基本上想获取数组中的前 2 个值,将它们放入 2 个单独的变量中,然后继续下一步,如下所示:

var test_array = [0.1, 2.1, 0.7, 5.4, 3.2, 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() 方法吗?

标签: javascriptarraysloopsforeachiterator

解决方案


它可能不会好多少,但无论如何你的长度都不正确。我想你可能想一次看到两个增量:

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);
}

我注意到你也会遇到这种问题。


推荐阅读