for...in,for...of,forEach
程序员文章站
2024-03-25 14:30:52
...
参考:
https://blog.csdn.net/Seven521m/article/details/83827844
遍历对象的方法:for...in
,Object.keys(obj)
,Object.getOwnPropertyNames(obj)
,Reflect.ownKeys(obj)
。
参考:https://blog.csdn.net/weixin_38788947/article/details/81840087
for…in,for…of,forEach的区别:
1.遍历对象
for...in
:输出索引
。
let obj = {
a: 1,
b: 2,
c: 3
};
for (let key in obj) {
console.log(key, obj, obj.key, obj[key]);
}
// a {a: 1, b: 2, c: 3} undefined 1
// b {a: 1, b: 2, c: 3} undefined 2
// c {a: 1, b: 2, c: 3} undefined 3
for..of
&& forEach
:不支持。
2.遍历数组
let arr = [1,'参数2',3]
for..in
:输出 索引
。
let arr = [1,'参数2',3];
for(let i in arr){
console.log(i,arr[i],arr.i)
}
// 0 1 undefined
// 1 参数2 undefined
// 2 3 undefined
for..of
:输出 值
。
let arr = [1,'参数2',3];
for(let i of arr){
console.log(i)
}
// 1
// 参数2
// 3
forEach
:输出 值&索引
let arr = [1,'参数2',3];
arr.forEach((item,index)=>{
console.log(item,index)
})
// 1 0
// 参数2 1
// 3 2
3、遍历的数组或对象包含原型属性或者自定义属性时
遍历时能否中断循环
for..in
:无法中断for..of
:可以使用break中断forEach
:无法中断
上一篇: Tomcat 开启APR运行模式
下一篇: css3动画学习之 transform
推荐阅读
-
for...in,for...of,forEach
-
C#中将foreach改为for循环,并将数据添加到数组中以["",""]格式输出
-
forEach处理List每行显示固定的几个 博客分类: Page
-
代码举例说明for,do,do-while,foreach四种循环结构
-
MyBatis使用<foreach>标签报错
-
Mybatis中 foreach 嵌套使用 if 标签对象取值问题
-
「译」forEach循环中你不知道的3件事
-
mybatis使用foreach遍历时同时遍历key和value
-
聊一聊C# 8.0中的await foreach
-
MyBatis的foreach查询(List、Array、Map) 博客分类: Mybatis foreachIN查询