JS常用方法(三)

 下面是JavaScript 常用方法和功能的分类汇总,分多篇总结,此为第三篇:对象方法。

  • 对象方法

1. Object.keys(obj): 返回一个包含对象所有可枚举属性名称的数组。

const obj = { a: 1, b: 2 };
console.log(Object.keys(obj)); // 输出 ["a", "b"]

2. Object.values(obj): 返回一个包含对象所有可枚举属性值的数组。

const obj = { a: 1, b: 2 };
console.log(Object.values(obj)); // 输出 [1, 2]

3. Object.entries(obj): 返回一个包含对象所有可枚举属性 [key, value] 对的数组。

const obj = { a: 1, b: 2 };
console.log(Object.entries(obj)); // 输出 [["a", 1], ["b", 2]]

4. Object.assign(target, ...sources): 将所有可枚举属性的值从一个或多个源对象复制到目标对象。

const target = { a: 1 };
const source = { b: 2 };
Object.assign(target, source);
console.log(target); // 输出 { a: 1, b: 2 }

5. Object.freeze(obj): 冻结对象,使其不可修改。

const obj = { a: 1 };
Object.freeze(obj);
obj.a = 2; // 无效操作
console.log(obj.a); // 输出 1

6. Object.seal(obj): 密封对象,防止添加新属性,但可以修改现有属性。

const obj = { a: 1 };
Object.seal(obj);
obj.a = 2; // 有效操作
obj.b = 3; // 无效操作
console.log(obj); // 输出 { a: 2 }

7. Object.create(proto): 创建一个新对象,使用指定的原型对象和可选的属性。

const proto = { greet() { return "Hello"; } };
const obj = Object.create(proto);
console.log(obj.greet()); // 输出 "Hello"

8. Object.defineProperty(obj, prop, descriptor): 在对象上定义一个新属性,或修改现有属性。

const obj = {};
Object.defineProperty(obj, 'a', { value: 1, writable: false });
obj.a = 2; // 无效操作
console.log(obj.a); // 输出 1

猜你喜欢

转载自blog.csdn.net/qq_46094169/article/details/142093944