JavaScript 循环遍历: for in/for of/forEach 的使用

1.for in

遍历时的 key 值为数组的索引,所有要用其值的时候需要 Arr[key]获取他的值

let lessons = [
	{title: '媒体查询响应式布局',category: 'css'},
  {title: 'FLEX 弹性盒模型',category: 'css'},
	{title: 'MYSQL多表查询随意操作',category: 'mysql'}
];

for (const key in lessons) {
	console.log('key',key)
    console.log(`标题: ${lessons[key].title}`);
}

for in

2.for of

for/of 每次循环取其中的值而不是索引

let lessons = [
	{title: '媒体查询响应式布局',category: 'css'},
  {title: 'FLEX 弹性盒模型',category: 'css'},
	{title: 'MYSQL多表查询随意操作',category: 'mysql'}
];

for (const item of lessons) {
  console.log('item',item);
  console.log(`
    标题: ${item.title}
    栏目: ${item.category == "css" ? "前端" : "数据库"}
  `);
}

for of

3.forEach

forEach使函数作用在每个数组元素上但是没有返回值。
下面例子是截取标签的2个字符。

let lessons = [
	{title: '媒体查询响应式布局',category: 'css'},
  {title: 'FLEX 弹性盒模型',category: 'css'},
	{title: 'MYSQL多表查询随意操作',category: 'mysql'}
];

lessons.forEach((item, index, array) => {
    item.title = item.title.substr(0, 5);
});
console.log(lessons);

forEach

对于值类型的数组,还是需要用其索引改变他的值

let arr=[1,2,3,4,5]

arr.forEach((val,index)=>{
   arr[index]*=10
})
console.log(arr);//[10, 20, 30, 40, 50]

//对于值类型的数组,还是需要用其索引改变他的值
let arr=[1,2,3,4,5]
let arr1= arr.forEach((val,index)=>{
   val*=10
   console.log(val);//10.20,30,40,50
})
console.log(arr);//(5) [1, 2, 3, 4, 5]

注意:如果要改变数组里面的值,要分辩其是引用类型还是值类型,如果是引用类型(如数组,对象),就可以直接对这个值进行操作,如果是值类型,就需要arr[index]对这个值进行操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值