1. 对象的键转换为数组:
const obj = { a: 1, b: 2, c: 3 };
const keys = Object.keys(obj);
console.log(keys); // 输出: ["a", "b", "c"]
2. 对象的值转换为数组:
const obj = { a: 1, b: 2, c: 3 };
const values = Object.values(obj);
console.log(values); // 输出: [1, 2, 3]
3. 对象的键值对转换为数组:
const obj = { a: 1, b: 2, c: 3 };
const entries = Object.entries(obj);
console.log(entries); // 输出: [["a", 1], ["b", 2], ["c", 3]]
4. 将对象属性和方法(如果有的话)组合成数组:
const obj = { a: 1, b: 2, c: 3 };
const array = [];
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
array.push({ key: key, value: obj[key] });
}
}
console.log(array);
// 输出: [{key: "a", value: 1}, {key: "b", value: 2}, {key: "c", value: 3}]
hasOwnProperty() 方法返回一个布尔值,表示对象自有属性(而不是继承来的属性)中是否具有指定的属性。