广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >JavaScript 语句之常用 for 循环详解
  • 124
分享到

JavaScript 语句之常用 for 循环详解

2024-04-02 19:04:59 124人浏览 安东尼
摘要

javascript中循环语句不少,for、for in、for of和forEach循环,今天对比Array、Object、Set(es6)、Map(ES6)四种数据结构循环语句支

javascript中循环语句不少,for、for in、for of和forEach循环,今天对比Array、Object、Set(es6)、Map(ES6)四种数据结构循环语句支持的情况及区别。

新建四种数据类型的测试数据


let arr = [1, 2, 3, 4, 5, 6];
let obj = { a: 1, b: 2, c: 3 };
let map = new Map([['a', 'a1'], ['b', 'b2'], ['c', 'c3']]);
let set = new Set(['a', 'b', 'c']);

1 for

普通for循环在 Array 中可以使用。 遍历数组时,是遍历数组 下标 索引,通过下标去取值。


for (let i = 0; i < arr.length; i++) { // i是下标(索引)
  console.log(i)
  console.log(arr[i])
}

2 for in

for in 在 Array 和 Object 中都可以使用。需要注意的是,在原型上的属性,也会被循环出来。

Array


let arr = [1, 2, 3, 4, 5, 6];
Array.prototype.a = "1"

for (let i in arr) {  // i是下标(索引)
  console.log(i)
  console.log(arr[i])
}

可以看到原型上的也被循环出来了,只并不是我们想要的,我们可以通过 hasOwnProperty过滤掉原型上的属性。


let arr = [1, 2, 3, 4, 5, 6];
Array.prototype.a = "1"

for (let i in arr) {  // i是下标(索引)
  if (arr.hasOwnProperty(i)) {
    console.log(i)
    console.log(arr[i])
  }
}

Object


let obj = { a: 1, b: '2', c: 3 };
Object.prototype.d = 4

for (let key in obj) {  // key是键
  console.log(key)
  console.log(obj[key])
}

对于Object也是会存在同样问题,原型上的也会被循环出来,同样也可以通过 hasOwnPr operty 过滤 掉原型上的属性 。


for (let key in obj) {  // key是键
  if (obj.hasOwnProperty(key)) {
    console.log(key)
    console.log(obj[key])
  }
}

3 for of

for of在Array、Object、Set、Map中都可以使用。

Array

Array本质上也是对象,所以我们可以在隐式原型(__proto__)上可以找到定义好的方法。


for (let key of arr.keys()) {  // key是下标
  console.log(key)
}
for (let value of arr) {     // value是值
  console.log(value)
}
for (let value of arr.values()) { // value是值
  console.log(value)
}
for (let [key, value] of arr.entries()) { // key是下标 value是值
  console.log(key,value)
}

Object


for (let [key, value] of Object.entries(obj)) { // key是下标 value是值
  console.log(key, value)
}

Set

由于Set是没有重复的,所以keys和values是一致的,也就是说下面四个输出是一致的


for (let key of set.keys()) {  
  console.log(key)
}
for (let value of set) {     
  console.log(value)
}
for (let value of set.values()) { 
  console.log(value)
}
for (let [key, value] of set.entries()) { 
  console.log(key, value)
}

Map


for (let key of map.keys()) { 
  console.log(key)
}
for (let value of map) {     
  console.log(value)
}
for (let value of map.values()) { 
  console.log(value)
}
for (let [key, value] of map.entries()) { 
  console.log(key, value)
}

可以使用break,continue语句跳出循环,或者使用return从函数体返回。


for (let key of arr.keys()) {  // key是下标
  if (key == 3) {
    return
  }
  console.log(key)
}
for (let key of arr.keys()) {  // key是下标
  if (key == 3) {
    break
  }
  console.log(key)
}
for (let key of arr.keys()) {  // key是下标
  if (key == 3) {
    continue
  }
  console.log(key)
}

4 forEach

forEach循环在Array、Set、Map中都可以使用。但是方法不能使用break,continue语句跳出循环,或者使用return从函数体返回。

Array


arr.forEach((value, index) => {
  console.log(value, index)
})

Se t


set.forEach((value, key) => {
  console.log(value, key)
})

M ap


map.forEach((value, key) => {
  console.log(value, key)
})

break,continue和return

使用continue会提示


Illegal continue statement: no surrounding iteration statement

使用break会提示


Illegal break statement

使用return,并不会返回,而是继续循环

5 总结

普通 for 循环在 Array 中可以使用。遍历数组时,是遍历数组下标索引,通过下标去取值;for in 在 Array 和 Object 中都可以使用。但需要注意的是,在原型上的属性,也会被循环出来;for of 在Array、Object、Set、Map中都可以使用。也可以使用break,continue和return;forEach循环在Array、Set、Map中都可以使用。但是方法不能使用break,continue语句跳出循环,或者使用return从函数体返回。

到此这篇关于JavaScript 语句之常用 for 循环详解的文章就介绍到这了,更多相关js for 循环内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: JavaScript 语句之常用 for 循环详解

本文链接: https://www.lsjlt.com/news/122345.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JavaScript 语句之常用 for 循环详解
    JavaScript中循环语句不少,for、for in、for of和forEach循环,今天对比Array、Object、Set(ES6)、Map(ES6)四种数据结构循环语句支...
    99+
    2022-11-11
  • Python循环语句代码详解:while、for、break
    目录 1 while循环   1 while循环 循环语句是程序设计中常用的语句之一。任何编程语言都有while循环,Python也不例外。while循环的格式如下所示。  while(表达式):       …   else: ...
    99+
    2023-09-20
    python 开发语言
  • python基础详解之if循环语句
    前言 还记得这个九九乘法表吗,这次课后相信你可以用代码给你的小弟弟妹妹们变出这份“葵花宝典”。 循环 如果要把循环翻译成机器语言,那他对应的可以是 for…in… ,循环就像是一个...
    99+
    2022-11-12
  • Golang的循环语句和循环控制语句详解
    目录一、循环语句1. 普通循环1)语法2)举例2. 循环嵌套3. range循环二、循环控制语句1.Break-中断(跳出)循环1)中断(跳出)循环2)指定想中断(跳出)的循环(嵌套...
    99+
    2022-11-12
  • Go语言学习之循环语句使用详解
    目录1、for循环2、for-each语法3、break的使用4、continue的使用5、goto的使用1、for循环 写法基本和其他语言一致,只是没有了while循环,用for代...
    99+
    2022-11-13
  • 【Java编程教程】详解 Java for 循环语句
    Java for 循环用于多次迭代程序的一部分。如果迭代次数固定,建议使用for循环。 Java 中有三种类型的 for 循环。   简单的 for 循环 For-each或增强型 for 循环 标记为循环 # Java 简单 ...
    99+
    2023-10-10
    java jvm servlet
  • JavaScript中的for循环与双重for循环详解
    for循环 for循环就是对数组的元素进行循环。 语法: for (初始化变量; 条件表达式; 迭代语句) {      需要执行的代码块...
    99+
    2022-11-11
  • Python for 循环语句的使用
    目录 Python for 循环语句通过序列索引迭代循环使用 else 语句 Python for 循环语句 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。 语法: f...
    99+
    2022-06-02
    Python for 循环语句
  • Python基础教程之循环语句(for、while和嵌套循环)
    循环可以用来重复执行某条语句,直到某个条件得到满足或遍历所有元素。 1 for循环 是for循环,可以把集合数据类型list、tuple、dict、set的元素遍历出来。 (1)对...
    99+
    2022-11-11
  • Javascript中for循环语句有哪些写法
    这篇文章主要介绍了Javascript中for循环语句有哪些写法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一般写法如下:for(var&...
    99+
    2022-10-19
  • Go语言基础for循环语句的用法及示例详解
    目录概述语法注意示例一  死循环,读取文件示例二  打印乘法表示例三  遍历字符串,数组,map 概述 for循环是一个循环控制结构,可以执行指定次数的...
    99+
    2022-11-12
  • C语言之循环语句详细介绍
    目录前言while语句do...while语句for语句结语前言 C语言中的循环结构是程序中的一个基本结构。 循环结构可以使我们写很少的语句,让计算机反复执行某一过程。 C语言提供了...
    99+
    2022-11-12
  • JavaScript中三种for循环语句的使用总结(for、for...in、for...of)
    前言 每个接触JS的开发人员都不可避免的与for循环打交道,毕竟这是遍历必不可少的工具之一。JavaScript 中的 for 循环语句相信大家都已经快用厌了,现在有好多文章都在讲怎...
    99+
    2022-11-12
  • Python 条件,循环语句详解
    目录1、Python 条件语句1.1 pass语句2、Python for 循环语句2.1 for 嵌套循环3、Python while 循环语句3.1 while 循环嵌套4、br...
    99+
    2022-11-12
  • Python循环语句代码详解
    本篇内容介绍了“Python循环语句代码详解”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!.1 while循环循环语句是程序设计中常用的语句...
    99+
    2023-06-15
  • Go语言中for循环语句怎么用
    这篇文章主要介绍了Go语言中for循环语句怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。概述for循环是一个循环控制结构,可以执行指定次数的循环语法第一种for&nbs...
    99+
    2023-06-25
  • 详解C语言中for循环与while循环的用法
    目录一、单层for循环二、for循环与if选择的嵌套三、多层for循环的嵌套四、while循环五、总结一、单层for循环 引例:C语言实现求1到10的和(用for循环实现) #inc...
    99+
    2022-11-13
  • 从头学习C语言之for语句和循环嵌套
    目录for语句:前言:注意事项:语句形式:执行顺序:示例:循环嵌套:语句形式:流程图:示例:总结for语句: 前言: 循环的基本结构离不开三个基本动作: 初始化计数器循环条件更新计数...
    99+
    2022-11-13
  • python基础之while循环、for循环详解及举例
    目录1.while循环1.1Whlie循环的书写方式1.2while循环的格式1.3while循环注意事项1.4while嵌套的格式1.5while练习:计算 1~100 ...
    99+
    2022-11-10
  • python中for循环语句如何使用
    在Python中,for循环用于迭代一个可迭代对象(如列表、元组、字符串等)中的元素。语法结构:```for 变量 in 可迭代对象...
    99+
    2023-09-14
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作