JavaScript遍历数组和对象常用方法总结

①数组的遍历:

	this.types = ['单选题', '多选题', '判断题']
	const len = this.types.length
	for (let i = 0; i < len; i++) {
	      console.log('index:', i, 'value:', this.types[i]) // i为number类型
	}
	// eslint-disable-next-line prefer-const
	for (let index in this.types) {
	      console.log('index:', index, 'value:', this.types[index]) // index为string类型
	}
	// eslint-disable-next-line prefer-const
	for (let item of this.types) { // ES6新增
	      console.log('item:', item)
	}
    // for...of 是 ES6 新引入的循环,用于替代 for..in 和 forEach() ,并且支持新的迭代协议。它可用于迭代常规的数据类型,如 Array 、 String 、 Map 和 Set 等等。

②对象的遍历:

	this.types = {
		'单选题':  '1',
		'多选题':  '2',
		'判断题':  '3'
	}
	for (const key in this.types) {
		console.log('key:', key, 'value:', this.types[key])
	}
	for (const key of Object.keys(this.types)) {
		console.log('key:', key, 'value:', this.types[key])
	}
	for (const value of Object.values(this.types)) {
		console.log('value:', value)
	}
	for (const [key, value] of Object.entries(this.types)) {
		console.log(key + ':' + value)
	}
	console.log('Object.keys:', Object.keys(this.types)) // 由对象中所有属性的key组成的数组
	console.log('Object.values:', Object.values(this.types)) // 由对象中所有属性的value组成的数组
	console.log('Object.entries:', Object.entries(this.types)) // 由对象中所有属性的key和value组成的数组

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
JavaScript的数组和对象是两种不同的数据类型,它们在具体的数据存储和使用方式上都有着明显的差异。因此,在遍历这两种类型的数据时,对应的方法也是不同的。下面简单介绍一下它们的区别。 数组是一种有序的数据集合,其每个元素都有一个数字索引,从0开始计数。JavaScript提供了多种遍历数组方法,包括for循环、forEach、map等。其常用的是for循环,具体使用方式如下: ``` let arr = ['a', 'b', 'c', 'd']; for(let i = 0; i < arr.length; i++){ console.log(arr[i]); } ``` 这段代码就是最基本的遍历数组方法,通过循环每一个索引,来获取对应的元素,然后进行操作。 而对象则是一种无序的键值对集合,其每个键值对就是一个属性和一个对应的值。使用对象时,最常用遍历方法是for...in循环,具体使用方式如下: ``` let obj = {a: 1, b: 2, c: 3}; for(let key in obj){ console.log(key + ': ' + obj[key]); } ``` 这段代码就是遍历对象的最基本方式,通过循环对象的每一个属性,来获取对应的值,然后进行操作。 需要注意的是,在对象遍历,我们一般使用for...in循环来遍历对象的属性,需要注意的是,在使用for...in循环时,枚举顺序是不确定的,因此需要特别注意循环内部的顺序问题。 综上,数组和对象遍历方法有明显的区别。在使用时,需要分别根据数据类型采用对应的方法,才能够获得最好的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值