【MDNobejctapi学习】

Object

object是JavaScript的一种数据类型。它用于存储各种键值集合和更复杂的实体。Objects可以通过object()构造函数或者使用对象字面量的方式创建

描述

在JavaScript中,几乎所有的对象都是Object类型的实例,他们都会从Object.prototype继承属性和方法,虽然大部分属性都会覆盖(shadowed)或者说是被重写(overridden)。除此之外,Object还可以被故意的创建,但是这个对象并不是一个“真正的对象”(例如:通过Object.create(null).),或者通过一些手段改变对象,使其不再是一个“真正的对象”(比如说:Object.setPrototypeIf)。
通过原型链,所有的object都能观察到(Object.propotype object)的改变,除非这些受到改变影响的属性和方法沿着原型链被进一步的重写。尽管有潜在的危险,但这为覆盖或扩展对象的行为提供了一个非常强大的机制。
Object构造函数为给定的参数创建包装类对象(object wrapper),具体有一下情况:

  • 如果给定值是null或undefined,将会创建并返回一个空对象
  • 如果传进去的是一个基本类型的值,则会构造其包装类型的对象
  • 如果传进去的是引用类型的值,仍然会返回这个值,经他们复制的变量保有和源对象相同的引用地址
    当以非够着函数形式被调用是,Object的行为等同于new Object()。
    可查看对象初始化/字面量语法。

从一个对象上删除一个属性

Object自身没有提供方法删除其自身属性(Map中的Map.prototype.delete().可以删除自身属性)为了删除对象上的属性,必须使用delete操作符

构造函数

Object()
创建一个新的Object对象。该对象将会包裹(wrapper)传入的参数

静态方法

Object.assign()
通过复制一个或多个对象来创建一个新的对象。
Object.create()
使用指定的原型对象和属性创建一个新对象
Object.defineProperty()
给对象添加一个熟悉并指定该熟悉的配置
Object.defineProperties()
给对象添加多个属性并分别指定他们的配置
Object.entries()
返回给定对象自身可枚举属性的【key,value】数组
Object.freeze()
冻结对象:其他代码不能删除或更改任何属性。
Object.getOwnPropertyDescripeor()
返回对象指定的属性配置
Object.getOwnPropertyNames()
返回一个数组,它包含了指定对象所有的可枚举或不可枚举的属性名
O

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值