首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JavaScript教程-如何在JavaScript中遍历数组

本文将为您提供对如何迭代JavaScript中的Array数据结构的扎实理解。无论您是刚刚开始学习JavaScript还是在这里学习复习,任何一种方式都将为您带来价值。本文将引导您完成使用最广泛的JavaScript概念之一。

什么是数组?

上面是一个用于存储多个值的JavaScript数组。这是数组的最简单形式之一。它在数组内部包含4个“元素”,所有字符串。如您所见,每个元素都用逗号分隔。此示例数组包含不同品牌的汽车,并且可以用cars变量引用。

我们可以通过多种方法来迭代此数组。JavaScript具有令人难以置信的丰富功能,因此我们可以选择最佳的方法来解决问题。

这是解决JavaScript中数组迭代的方法:

1、重点介绍5种遍历数组的常用方法

2、对每种迭代方法显示一些见解

3、提供一些代码,您也可以使用它进行测试!

传统For循环

什么是For循环?维基百科将For循环定义为:

“在计算机科学中,for循环(或简称为for循环)是用于指定迭代的控制流 语句,该语句允许重复执行代码。”for循环是一种重复执行代码的方法。console.log(“hi”)您可以将其包装在for循环中,而不必键入5次。在第一个示例中,我们将学习如何遍历上面看到的cars数组,并打印出每个元素。迭代器或计数器将在第一个索引“ Tesla”处开始,并在最后一个“ Audi”处结束。它遍历数组并一次打印一个元素。

输出:

深入研究代码,我们将三个选项传递给for循环

1、迭代器变量- let i = 0;

2、迭代器应在何处停止- i

3、每个循环增加多少迭代器- i++

此循环从开始于0,每个循环将变量增加一个,并在我们击中数组中的最后一个元素时停止。传统的for循环的主要好处是您拥有更多的控制权。可以访问数组中的不同元素,或者以复杂的方式遍历数组以解决复杂的问题。例如,使用传统的for循环可以很容易地跳过数组中的所有其他元素。

forEach方法

什么是forEach方法?该forEach方法用于为数组的每个元素执行一个函数。如果数组的长度是“未知”或保证会改变,则此方法是一个不错的选择。此方法只能与数组,集合和映射一起使用。

forEach循环的最大好处是即使数组的大小可能会增加,也能够访问每个项目。它是适用于许多用例的可扩展解决方案,比传统的for循环更易于阅读和理解,因为我们知道我们将对每个元素进行精确的迭代一次。

While循环

什么是While循环?维基百科将While循环定义为:“ while循环是一个控制流 语句,它允许根据给定的布尔条件重复执行代码。在同时循环可以被认为是一个重复的if语句。”一while环是,如果一个条件是真还是假反复执行代码来检查的方式。因此,我们可以使用while循环,而不是使用带有嵌套if语句的for循环。或者,如果我们无法找到数组的长度,则while循环是一个不错的选择。while循环通常由计数器控制。在下面的示例中,我们显示了遍历数组的基本while循环。关键是要控制正在创建的while循环。

While循环示例(良好):

输出:

while循环的if语句为i

无限循环示例(错误):

输出:结果可能会有所不同。

BONUS示例(map迭代)

什么是map?维基百科将map定义为:“在许多编程语言中,map是将给定函数应用于函子的每个元素的高阶函数的名称,例如list,以相同顺序返回结果列表。以功能形式考虑时,它通常被称为“ 适用于所有人 ”。它是如何工作的?mapJavaScript中的函数将函数应用于数组内的每个元素。请花一点时间重新阅读该句子。然后,该map函数返回一个新数组,并将该函数应用于该数组中的每个元素。

map示例:

输出:

我们已将该map函数应用于包含四个1的数组。然后,该函数将每个元素乘以2,即x * 2,并返回一个新数组。然后将新数组存储在results变量中。

通过查看我们的输出,我们可以看到此方法成功完成。数组中的每个元素都已乘以2。在某些情况下,该方法可以替代循环,并且功能非常强大。

结论

您已经了解了五种遍历JavaScript中数组的不同方法。这些是基本的构建块,可帮助您成功完成JavaScript编程之旅。您还将接触到高级概念map,该概念经常在大型软件应用程序中使用。因此,您将如何在项目中使用数组?您觉得哪种迭代方法最令人兴奋?

谢谢阅读!如果您喜欢我的文章,请关注我和/或给我发送消息!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200526A0JGKY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券