对象的常用方法

本文介绍了JavaScript中几个重要的对象操作方法:hasOwnProperty用于检测对象属性,assign用于合并对象属性,defineProperty和defineProperties用于动态设置对象属性的可写性,keys,values,entries分别获取对象的键、值和键值对数组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、hasOwnProperty

检测对象是否拥有某个属性

用法:

var o1 = {flag: "abc"};
o1.hasOwnProperty("flag")

运行结果:

如果对象存在该属性则返回true,否则返回false

2、assign

合并对象属性

var o1 = {name: "zkq", age: 18};
var o2 = {address: "福建", sex: "男" }
var o3 = Object.assign(o1, o2);
console.log(o3);

运行结果:

合并两个对象的属性,返回合并后的对象,不改变原对象的值,如果对象的属性重复,后面对象属性的值覆盖前面对象的属性值

3、defineProperty

动态为对象设置属性

var o1 = {};
Object.defineProperty(o1, "name", {
    value: "张三",	//给属性赋值的内容
    writable: true		//设置属性是否可写,true可写,false只读,如果是false,就算代码运行了赋值语句,结果也是不会改变的
});
console.log(o1);

4、defineProperties

为对象动态设置多个属性值

var o1 = {};
Object.defineProperties(o1, {
    "name": {	//定义属性名称
        value: "张三",	//定义属性值
        writable: true	 //定义属性是否可改变
    },
    "age": {
        value: 18,
        writable: false //设置属性是否可写,true可写,false只读,如果是false,就算代码运行了赋值语句,结果也是不会改变的
    }
});
console.log(o1);

5、keys

获取对象的所有键并返回键的数组

var o1 = {name: "张三", age: 18};
var arr = Object.keys(o1);
console.log(arr);	//['name', 'age']

6、values

获取对象的所有值并返回值的数组

var o1 = {name: "张三", age: 18};
var arr = Object.values(o1);
console.log(arr);	//['张三', 18]

7、entries

获取对象的每一项属性的键和值,包装成一个数组,并返回一个二维数组

var o1 = {name: "张三", age: 18};
var arr = Object.entries(o1);
console.log(arr);	//返回二维数组 [Array(2), Array(2)] 二维数组内容为:[["name","张三"],["age",18]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值