JavaScript中遍历对象的方法有以下几种:
1. for...in循环:用于遍历对象的可枚举属性,包括自身属性和继承属性。但是它不能保证属性的顺序。
2. Object.keys()方法:返回一个由对象的所有可枚举属性组成的数组。该方法返回的属性名的顺序与使用for...in循环遍历时返回的顺序一致。
3. Object.values()方法:返回一个由对象的所有可枚举属性值组成的数组。该方法返回的属性值的顺序与使用Object.keys()方法返回的属性名的顺序一致。
4. Object.entries()方法:返回一个由对象的所有可枚举属性键值对组成的数组。该方法返回的键值对的顺序与使用Object.keys()方法返回的属性名的顺序一致。
5. Object.getOwnPropertyNames()方法:返回一个由对象的所有属性名(包括不可枚举属性)组成的数组。该方法返回的属性名的顺序与使用for...in循环遍历时返回的顺序一致。
6. Reflect.ownKeys()方法:返回一个由对象的所有属性名(包括Symbol类型的属性名)组成的数组。该方法返回的属性名的顺序与使用for...in循环遍历时返回的顺序一致。
因此,只有使用Object.keys()、Object.values()、Object.entries()、Object.getOwnPropertyNames()或Reflect.ownKeys()方法才能保证属性的顺序。