for each in 和 for in 和for of
for Each
从ES5开始 Javascript内置了forEach方法 用来遍历数组,但是存在一个局限,就是你不能中断循环(使用break语句或使用return语句);
例:
let arr = ['a', 'b', 'c', 'd']
arr.forEach(function (val, idx, arr) {
console.log(val + ', index = ' + idx) // val是当前元素,index当前元素索引,arr数组
console.log(arr)
})
输出结果:
a, index = 0
(4) ["a", "b", "c", "d"]
b, index = 1
(4) ["a", "b", "c", "d"]
c, index = 2
(4) ["a", "b", "c", "d"]
d, index = 3
(4) ["a", "b", "c", "d"]
for…in
for-in循环实际是为循环”enumerable“对象而设计的,for - in 也可用来循环数组,但一般并不推荐
例:
let obj = {a: '1', b: '2', c: '3', d: '4'}
for (let o in obj) {
console.log(o) //遍历的实际上是对象的属性名称 a,b,c,d
console.log(obj[o]) //这个才是属性对应的值1,2,3,4
}
for…of
它是ES6中新增加的语法
例如:循环一个数组 let arr = ['China', 'America', 'Korea'] for (let o of arr) { console.log(o) //China, America, Korea }
但是它并不能循环一个普通对象,但是可以循环一个拥有enumerable属性的对象。 如果我们按对象所拥有的属性进行循环,可使用内置的Object.keys()方法,如果我们按对象所拥有的属性值进行循环,可使用内置的Object.values()方法
例如循环一个字符串:
let str = 'love'
for(let o of str){
console.log(o) // l,o,v,e
}
转载于:https://www.cnblogs.com/2376020104ypj/p/9943301.html
最新文章
- java前台传多个id用什么接收_jsp 页面传多个id 到java后台的处理方式
- zabbix mysql 8g优化_Zabbix分区优化
- OpenGL-渲染管线的流程(有图有真相)
- 基于注释的Spring Security实战
- [云炬商业计划书阅读分享]袜子广告策划方案
- 笨小猴pascal题解
- Python常用编程模块汇总
- 无法序列化会话状态。请注意,当会话状态模式为“StateServer”或“SQLServer”时,不允许使用无法序列化的对象或 MarshalByRef 对象。...
- 视觉SLAM笔记(55) 位姿图
- node js并发加载页面缓慢_详解如何利用前端Node模块zlib开启gzip压缩使页面加载速度更快...
- 创业邦30岁以下青年企业家峰会暨颁奖典礼在京举行
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序报错的解决办法
- hdu acmsteps 2.1.3 Cake
- 将json字符串转换成html,根据json字符串生成Html的一种方式
- 常见十四种的Java算法
- Android widget之CompoundButton
- Code.V光学设计学习(一)——入门介绍
- 数组除重和运用随机点名的简单运用
- 【已解决】win10+py3.6+anaconda3 安装fbprophet(利用安装包离线安装)
- 微信公众平台开发过程