ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript 配列トラバーサルの 6 つの方法の比較

JavaScript 配列トラバーサルの 6 つの方法の比較

青灯夜游
青灯夜游転載
2021-01-26 18:59:312477ブラウズ

この記事では、6 つの JS 配列走査メソッド (for、foreach、for in、for of、.each、().each) を比較し、それらの違いを紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。

JavaScript 配列トラバーサルの 6 つの方法の比較

6 JS 配列走査メソッド

1. for

JavaScript では、 for ループ。配列

function* fibonacci() { // a generator function
  let [prev, curr] = [0, 1];
  while (true) {
    [prev, curr] = [curr, prev + curr];
    yield curr;
  }
}

for (let n of fibonacci()) {
  console.log(n);
  // truncate the sequence at 1000
  if (n >= 1000) {
    break;
  }
}

五、jQuery里面的$.each

$.each(arr|obj, function(k, v))
可以用来遍历数组和对象,其中k表示索引值或者key值,v表示value值

var arr = ['a','b','c']
$.each(arr, function(key, val) {
    console.log(key, val);
})
//0 a
//1 b
//2 c

六、jQuery里面的$().each()

$().each()在dom处理上面用的较多,主要是用来遍历DOMList。如果页面有多个input标签类型为checkbox,对于这时用$().each()来处理多个checkbox,例如:

$(“input[name=’checkbox’]”).each(function(i){
if($(this).attr(‘checked’)==true){
//操作代码
}

结论:

推荐在循环对象属性的时候使用for in,在遍历数组的时候的时候使用for of
for in循环出的是key,for of循环出的是value;
for of是ES6新引入的特性。修复了ES5的for in的不足;
for of不能循环普通的对象,需要通过和Object.keys()搭配使用。

跳出循环的方式有如下几种:
return 函数执行被终止;
break 循环被终止;
continue 循环被跳过。

更多编程相关知识,请访问:编程视频!!

以上がJavaScript 配列トラバーサルの 6 つの方法の比較の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。