javascript提供了许多迭代循环的方法。
forconst list = ['a', 'b', 'c']for (let i = 0; i < list.length; i++) { console.log(list[i]) //value console.log(i) //index}
您可以使用break中断for循环
您可以使用continue继续for循环的下一次迭代
foreach在es5中引入。给定一个数组,您可以使用list.foreach()迭代其属性:
const list = ['a', 'b', 'c']list.foreach((item, index) => { console.log(item) //value console.log(index) //index})//index is optionallist.foreach(item => console.log(item))
不过需要注意的是你无法摆脱这个循环。do...whileconst list = ['a', 'b', 'c']let i = 0do { console.log(list[i]) //value console.log(i) //index i = i + 1} while (i < list.length)
您可以使用break中断while循环:
do { if (something) break} while (true)
你可以使用continue跳转到下一个迭代:
do { if (something) continue //do something else} while (true)
whileconst list = ['a', 'b', 'c']let i = 0while (i < list.length) { console.log(list[i]) //value console.log(i) //index i = i + 1}
您可以使用break中断while循环:
while (true) { if (something) break}
你可以使用continue跳转到下一个迭代:
while (true) { if (something) continue //do something else}
与do...while的区别在于do...while总是至少执行一次循环。
for...in迭代对象的所有可枚举属性,给出属性名称。
for (let property in object) { console.log(property) //property name console.log(object[property]) //property value}
for...ofes2015引入了for循环,它结合了foreach的简洁性和破解能力:
//iterate over the valuefor (const value of ['a', 'b', 'c']) { console.log(value) //value}//get the index as well, using `entries()`for (const [index, value] of ['a', 'b', 'c'].entries()) { console.log(index) //index console.log(value) //value}
注意使用const。此循环在每次迭代中创建一个新范围,因此我们可以安全地使用它而不是let。
for...in vs for...of与for...in的区别在于:
for...of 迭代属性值
for...in 迭代属性名称
相关推荐:
js的for while循环
js的for in循环和java里foreach循环的区别分析
以上就是js中几种不同循环的介绍(附代码)的详细内容。
