宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

一、ES6循环对象数组

const arr = ['a', 'b', 'c', 'd'];
for (let i of arr) {
  console.log(i);
}

以上代码使用ES6的for of循环对数组arr进行遍历,输出结果分别为a,b,c,d。使用for of循环可以更好地遍历数组,代码简洁易懂,且不需要手动指定循环变量的下标。

二、JS循环对象

const obj = {'name': 'Tom', 'age': 20, 'gender': 'male'};
for (let key in obj) {
  console.log(key + ': ' + obj[key]);
}

以上代码使用JS for in循环遍历了对象obj,输出结果为name: Tom,age: 20,gender: male。for in循环能够获取到对象的属性名,通过属性名,就可以方便地获取对象中的值。

三、如何循环对象

ES6的for of循环可以循环所有可迭代对象,包括数组、字符串、Map、Set等,而for in循环遍历对象属性,但不包括原型链上的属性。同时,在循环对象时,如果对象中存在Symbol.iterator属性,则for of会调用该属性遍历对象。

四、v-for循环对象

  • {{index}} - {{value}}

以上代码使用Vue的v-for指令循环对象obj,输出相应的值。v-for指令提供了绑定数组的其他特性,例如获取索引、动态修改、过滤等操作,十分方便。

五、for循环对象

const obj = {'name': 'Tom', 'age': 20, 'gender': 'male'};
const keys = Object.keys(obj);
for (let i = 0; i < keys.length; i++) {
  console.log(keys[i] + ': ' + obj[keys[i]]);
}

以上代码使用for循环遍历对象,需要先获取对象的属性名再进行遍历。这种方式相比ES6的for of和JS的for in循环略显繁琐,但是使用Object.keys方法可以获取到对象的所有属性名,遍历可以十分方便。

六、for in循环对象

const obj = {'name': 'Tom', 'age': 20, 'gender': 'male'};
for (let key in obj) {
  if (obj.hasOwnProperty(key)) {
    console.log(key + ': ' + obj[key]);
  }
}

以上代码使用JS的for in循环遍历对象,但是需要判断属性是否属于对象本身,而不是原型链上的属性。使用hasOwnProperty方法就可以判断对象上是否存在该属性。

七、循环new对象

class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
}
const list = [
  new Person('Tom', 20),
  new Person('Jerry', 22),
  new Person('Mike', 18)
];
for (let item of list) {
  console.log(`${item.name}: ${item.age}`);
}

以上代码使用ES6的class创建新的对象,并使用for of循环遍历对象。这种方式相比直接使用字面量创建对象,可以更加灵活地定义对象的属性、方法等。

八、for循环创建对象

function createObject() {
  let obj = {};
  for (let i = 0; i < 10; i++) {
    obj[i] = i + 1;
  }
  return obj;
}
const obj = createObject();
for (let key in obj) {
  console.log(key + ': ' + obj[key]);
}

以上代码使用for循环创建对象,并使用for in循环遍历对象。使用该方式可以快速创建对象,进行相应的操作。

通过以上的详细阐述,可以发现ES6循环对象有很多种方式,不同的方式有不同的适用场景,可以根据实际需要进行选择。