学习-js的标准内置对象Object

这篇文章介绍了JavaScript中的两个重要方法。Object.defineProperty()用于在对象上定义或修改属性,返回该对象,属性默认不可修改。示例展示了如何定义和修改对象的属性。另一方面,Object.keys()返回一个包含对象所有可枚举属性的数组,顺序与遍历对象时一致。
摘要由CSDN通过智能技术生成
标准内置对象Object

1、Object.defineProperty()

/**
 * Object.defineProperty()
 * Object.defineProperty()方法会直接在一个对象上定义一个新属性,或者
 * 修改一个对象的现有属性,并返回此对象。
 * 
 * 备注:应当直接在 Object 构造器对象上调用此方法,而不是在任意一个 Object 
 * 类型的实例上调用。
 * 
 * 语法:
 * Object.definePropery(obj, prop, descriptor)
 * obj: 要定义属性的对象。
 * prop: 要定义或修改的属性的名称或symbol。
 * descriptor: 要定义或修改的属性描述符。
 * 
 * 默认情况下,使用Object.defineProperty()添加的属性值是不可修改(immutable)的。
 */
let obj = { age: 18 }
// 定义新属性
Object.defineProperty(obj, 'name', { value: '王一博', writable: false })
console.log(obj.name)
// 修改已存在的属性
Object.defineProperty(obj, 'age', {value: 25, writable: false})
console.log(obj.age)

2、Object.keys()

/**
 * Object.keys()
 * Object.keys()方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组
 * 中属性名的排列顺序和正常循环遍历该对象时返回的顺序一致。
 */

let obj = {
    name: '王一博',
    age: '25',
    gender: 'male'
}
console.warn(Object.keys(obj)) // [ 'name', 'age', 'gender' ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值