资讯专栏INFORMATION COLUMN

JavaScript的几种循环方式

piapia / 2497人阅读

摘要:本教程解释了现代中各种各样的循环可能性目录介绍提供了许多迭代循环的方法。引入了循环,它结合了的简洁性和破解能力注意使用。此循环在每次迭代中创建一个新范围,因此我们可以安全地使用它而不是。

JavaScript提供了许多通过LOOPS迭代的方法。本教程解释了现代JAVASCRIPT中各种各样的循环可能性

目录:

for

forEach

do...while

while

for...in

for...of

for...in vs for...of

介绍

JavaScript提供了许多迭代循环的方法。本教程通过一个小例子和主要属性解释每一个。

for
const 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 optional
list.forEach(item => console.log(item))
不过需要注意的是你无法摆脱这个循环。
do...while
const list = ["a", "b", "c"]
let i = 0
do {
  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)
while
const list = ["a", "b", "c"]
let i = 0
while (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...of

ES2015引入了for循环,它结合了forEach的简洁性和破解能力:

//iterate over the value
for (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 迭代属性名称

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/108472.html

相关文章

  • JavaScript几种循环方式

    摘要:本教程解释了现代中各种各样的循环可能性目录介绍提供了许多迭代循环的方法。引入了循环,它结合了的简洁性和破解能力注意使用。此循环在每次迭代中创建一个新范围,因此我们可以安全地使用它而不是。 JavaScript提供了许多通过LOOPS迭代的方法。本教程解释了现代JAVASCRIPT中各种各样的循环可能性 showImg(https://segmentfault.com/img/bVbfH...

    Allen 评论0 收藏0
  • JavaScript几种循环方式

    摘要:本教程解释了现代中各种各样的循环可能性目录介绍提供了许多迭代循环的方法。引入了循环,它结合了的简洁性和破解能力注意使用。此循环在每次迭代中创建一个新范围,因此我们可以安全地使用它而不是。 JavaScript提供了许多通过LOOPS迭代的方法。本教程解释了现代JAVASCRIPT中各种各样的循环可能性 showImg(https://segmentfault.com/img/bVbfH...

    ztyzz 评论0 收藏0
  • javascript几种常见遍历数据结构的语法

    摘要:接触这么多年,第一次总结一下它的遍历语法。而且你必须借助特定的结构才能遍历数据结构。它的作用是遍历对象的键名。建议仅在遍历数组的时候使用。另一个优点是,它可以遍历任何部署了接口的数据结构,甚至是非的数据类型,即自己定义的数据结构。 接触JavaScript这么多年,第一次总结一下它的遍历语法。以前我大部分时间都在老版本的JavaScript下写代码,所以大部分时间都是用for...in...

    kohoh_ 评论0 收藏0
  • JavaScript实现几种排序

    摘要:冒泡排序原理冒泡排序的过程就是将数组中相邻的两个元素进行比较,如果前面的元素比后面的元素要大交换位置,否则位置不变举个栗子有数组第一轮循环和比较,小于两者位置不变,接下来和比较,大于,两者交换位置,接着和比较,两者交换位置,继续和比较两者交 1.冒泡排序 原理:冒泡排序的过程就是将数组中相邻的两个元素进行比较,如果前面的元素比后面的元素要大交换位置,否则位置不变;举个栗子:有数组 ar...

    piapia 评论0 收藏0
  • JS常用几种异步流程控制

    摘要:虽然这个模式运行效果很不错,但是如果嵌套了太多的回调函数,就会陷入回调地狱。当需要跟踪多个回调函数的时候,回调函数的局限性就体现出来了,非常好的改进了这些情况。 JavaScript引擎是基于单线程 (Single-threaded) 事件循环的概念构建的,同一时刻只允许一个代码块在执行,所以需要跟踪即将运行的代码,那些代码被放在一个任务队列 (job queue) 中,每当一段代码准...

    Barry_Ng 评论0 收藏0

发表评论

0条评论

piapia

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<