js中forEach,for in,for of循环的用法示例小结

请看下面的文本。

js中forEach,for in,for of循环的用法示例小结

在JavaScript中,有多种迭代数组和对象的方式。 下面是三种常见的循环的用法: forEach,for in,和for of。接下来将详细介绍它们的用法和示例。

forEach循环

JavaScript中的forEach()方法用于迭代逐个数组元素,并为每个元素执行回调函数。 常见的语法格式如下:

array.forEach(callback(currentValue[, index[, array]])[, thisArg])

其中,参数callback表示要调用的函数,currentValue是数组中当前正在处理的元素,index是基于零的数组中元素的索引值,array是数组本身。thisArg是可选参数。它表示在回调函数中this的值。

下面是一个完整的示例:

const array = [1, 2, 3, 4, 5];

array.forEach(function(currentValue, index, array) {
  console.log(currentValue);
});

输出结果为:

1
2
3
4
5

for in循环

for in循环是遍历对象自身的可枚举属性。它能够迭代javascript中的对象属性,如对象字面量、数组和字符串。它的语法格式如下:

for (variable in object) {
  statement
}

其中,变量variable是每个属性的名称; object是要遍历的对象。statement是在循环中执行的代码语句。

例如,下面的例子演示了如何使用for in循环遍历对象和数组:

const obj = {a: 1, b: 2, c: 3};

for (const prop in obj) {
  console.log(`obj.${prop} = ${obj[prop]}`);
}
// 输出结果为:
// "obj.a = 1"
// "obj.b = 2"
// "obj.c = 3"
const arr = [1, 2, 3];

for (const index in arr) {
  console.log(`arr[${index}] = ${arr[index]}`);
}
// 输出结果为:
// "arr[0] = 1"
// "arr[1] = 2"
// "arr[2] = 3"

需要注意的是,for in循环会将继承自原型链的可枚举属性都迭代输出,所以在遍历时需要使用hasOwnProperty()方法进行判断。

for of循环

for of循环是一种新的迭代语句,它可以迭代可迭代对象的值。例如,Array,Map和Set。

下面是一个简单的使用for of循环的例子:

const arr = [1, 2, 3];
for (const value of arr) {
  console.log(value);
}
// 输出结果为:
// 1
// 2
// 3

下面是一个更复杂的例子,其中使用for of循环遍历Map的键和值:

const map = new Map([['a',1], ['b',2], ['c',3]]);
for (const [key, value] of map) {
  console.log(`${key} = ${value}`);
}
// 输出结果为:
// "a = 1"
// "b = 2"
// "c = 3"

需要注意的是,for of循环仅可迭代可迭代对象的值,所以在迭代非数组或类数组对象时需要使用对象自己的迭代器(即Symbol.iterator)获取其可迭代值。

以上就是对forEach,for in,for of循环的用法和示例详细介绍。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js中forEach,for in,for of循环的用法示例小结 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • 找到一点可怜的关于dojo资料,谢谢作者!

    感谢您对Dojo资料的关注。如果您希望获取一些关于Dojo的基础知识或者文档,可以采取以下步骤: 访问Dojo官方网站(https://dojotoolkit.org/)Dojo的官方网站包含了官方文档、示例、API等大量资料。您可以在该网站的文档资源(Documentation Resources)中寻找您需要的资料,或者在源代码库(Source Code…

    JavaScript 2023年6月11日
    00
  • JS前端错误监控捕获以及上报方法详解

    JS前端错误监控捕获以及上报方法详解 简介 在前端开发过程中,我们经常会遇到各种各样的问题,其中 JS 错误显得尤为常见。在出现问题时我们需要将其排查并解决,但有时问题的实际情况在我们面前并不呈现,而是隐蔽的。这时需要我们有一种错误监控的方法,即在 JS 代码中添加错误监控功能,可以捕获所有的 JS 错误,并及时向后端上报,以便我们及时处理问题。 实现过程 …

    JavaScript 2023年5月18日
    00
  • js的touch事件的实际引用

    下面我将为你详细讲解JS的touch事件实际引用的攻略。 一、什么是Touch事件? Touch事件是一种移动端特有的事件,它包括了以下几个事件: touchstart: 手指触摸屏幕时触发的事件 touchmove: 手指在屏幕上滑动时触发的事件 touchend: 手指从屏幕上离开时触发的事件 touchcancel: 触摸被意外取消时触发的事件,如页面…

    JavaScript 2023年6月11日
    00
  • 对于js垃圾回收机制的理解

    关于 JS 垃圾回收机制的理解,可以从下面三个方面来进行说明: 什么是垃圾回收? 垃圾回收是一种自动化的过程,它主要的功能是自动找出不再被程序所使用的内存,然后释放这些内存资源。JS 中的垃圾回收,就是通过一些算法来进行自动的垃圾回收。 垃圾回收的算法 垃圾回收器通过检查数据的引用,找出不再被引用的变量,然后进行垃圾回收操作。JS 垃圾回收是基于算法原理的。…

    JavaScript 2023年6月11日
    00
  • php与javascript正则匹配中文的方法分析

    关于“php与javascript正则匹配中文的方法分析”,我为您提供以下攻略。 1. 什么是正则表达式? 正则表达式是一种用来描述字符串模式的方法。它可以在文本中找到特定的字符、单词或模式,并根据需要对它们进行操作。正则表达式常用于搜索、替换和验证文本数据。 2. 中文匹配的基本语法 在正则表达式中,中文是通过Unicode码来表示的。要匹配中文,我们需要…

    JavaScript 2023年5月19日
    00
  • 异步安全加载javascript文件的方法

    异步安全加载JavaScript文件是指在保证网页性能和用户体验的同时,确保JavaScript代码能够无误地执行。下面是异步安全加载JavaScript文件的方法: 1. 异步加载JavaScript文件 异步加载JavaScript文件可以使用HTML5中的script标签,并且设置async属性。这样浏览器会异步加载脚本,不会阻塞网页的渲染,同时脚本在…

    JavaScript 2023年5月27日
    00
  • Python对象与引用的介绍

    Python对象与引用的介绍 在Python中,一切都是对象。对象(Object)是Python中最重要的概念之一,懂得如何管理对象在Python编程中至关重要。Python中的所有变量都是对象的一个引用,这就意味着当我们将一个对象赋值给一个变量时,实际上是将这个对象的引用赋值给变量。这也就是为什么很多人将Python描述成一门“动态”“弱化”的语言,因为我…

    JavaScript 2023年6月11日
    00
  • Js apply方法详解

    Javascript中apply()方法详解 Javascript中apply()方法是一种高阶函数,可以在调用函数时实现对函数作用域的绑定。apply()方法可以动态地将一个数组传递到一个函数,并使用该数组作为该函数的参数。 语法 apply()方法的语法如下所示: function.apply(thisArg, [argsArray]) thisArg:…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部