循环的循环计数

时间:2016-11-07 06:52:27

标签: loops optimization

在temp变量中使用循环计数是否有用。就像它不需要每次通过执行循环来获取计数值。

var iCount = iArray.length, jCount = jArray.length;
for(var i=0; i<iCount; i++){
  for(var j=0; j<jCount; j++) {
    ...
  }
}

上面的例子显示了Arrays,但它不一定是一个数组,它也可以是myObject.total中的类。

1 个答案:

答案 0 :(得分:1)

如评论所述,编译器必须为每次迭代查找长度。

<强>样品

var arr = [1,2,3,4,5];
var result=[];

function getLength(){
  console.log('check Length');
  return arr.length
}

for (var a = 0; a < getLength(); a++){
  result.push(arr[a]);
}

保存在临时变量中的长度

var arr = [1,2,3,4,5];
var result=[];

function getLength(){
  console.log('check Length');
  return arr.length
}
var length = getLength()
for (var a = 0; a < length; a++){
  result.push(arr[a]);
}

此外,如果您正在操作相同的数组,则可能会导致一些问题

var arr = [1,2,3,4,5];

for (var a = 0; a < arr.length; a++){
  console.log(arr.splice(a,1))
}

临时变量的长度

var arr = [1,2,3,4,5];

var length = arr.length
for (var a = 0; a < length; a++){
  console.log(arr.splice(a,1))
}