JavaScript for...of

JavaScript for…of 循环语句遍历遍历可迭代对象的所有的值,可迭代对象包括 Array,Map,Set,String,TypedArray,arguments 对象等等。

JavaScript for...of 循环语句遍历遍历可迭代对象的所有的值,可迭代对象包括 Array,Map,Set,String,TypedArray,arguments 对象,地图,节点列表等等。

语法:

for (variable of iterable) {
  // _code block to be executed_
}

说明:

  • variable - 在每次迭代中,可迭代对象的值分配给变量。 可以使用 constletvar 声明遍历。
  • iterable - 可迭代对象。

遍历数组

const cars = ["BMW", "Volvo", "Mini"];

let text = "";
for (let x of cars) {
  text += x;
}

遍历字符串

let language = "JavaScript";

let text = "";
for (let x of language) {
  text += x;
  console.log(x);
}

for…of 与 for…in 的区别

无论是 for...in 还是 for...of 语句都是迭代一些东西。它们之间的主要区别在于它们的迭代方式。

for...in 语句以任意顺序迭代对象的可枚举属性。

for...of 语句遍历可迭代对象定义要迭代的数据。

浏览器支持

for…of 在 2015 年被添加到 JavaScript ES6 中。

Safari 7 是第一个支持 for...of 的浏览器。

Chrome Edge Firefox Safari Opera
Chrome 38 Edge 12 Firefox 51 Safari 7 Opera 25
Oct 2014 Jul 2015 Oct 2016 Oct 2013 Oct 2014

Internet Explorer 不支持 for…of。