2

我在 javascript 中看到的大多数循环示例都使用array.lengthfor 循环本身的属性,如下所示:

var numbers = [1,2,3,4,5];
for (var i = 0; i < numbers.length; i++) {
  // do something
}

但是,有时我看到将array.length属性写入变量,然后在循环中使用变量值,而不是:

var numbers = [1,2,3,4,5];
var len = numbers.length;
for (var i = 0; i < len; i++) {
  // do something
}

来自 C# 背景,我从来不用担心这个。但是,在 Javascript 中,第二种方法更有效,为什么?

4

1 回答 1

1

第二种效率更高,因为它不必对任何东西进行操作。首先,它每次只需要引用一个数据单元。

于 2013-11-03T12:30:59.280 回答