位置: 编程技术 - 正文

JavaScript对象的property属性详解(javascript对象的属性和方法)

编辑:rootadmin

JavaScript中对象的property有三个属性:1.writable。该property是否可写。2.enumerable。当使用for/in语句时,该property是否会被枚举。3.configurable。该property的属性是否可以修改,property是否可以删除。

在ECMAScript 3标准中,上面三个属性的值均为true且不可改:新建对象的property是可写的、可被枚举的、可删除的;而在ECMAScript 5标准中,可通过property的描述对象(property descriptor)来对这些属性进行配置和修改。

如果将property的值信息也作为property的属性来看的话,对象中的property拥有四个属性:value、writable、enumerable和configurable。

对于用getter和setter方法来定义的property,由于其没有writable属性(property是否可写取决于setter方法是否存在),因此这种property也有四个属性:get、set、enumerable和configurable — get和set属性的值为function。

获取对象property的属性

ECMAScript 5标准中,可以通过Object.getOwnPropertyDescriptor()来获取对象自身某个property的属性信息:可以看到,如果property不存在或者property继承自原型对象,则返回undefined。

设置对象property的属性

ECMAScript 5标准中,可以通过Object.defineProperty()来设置对象自身某个property的属性:如果设置的property是从原型对象中继承而来的,那么JavaScript将在对象自身中创建一个同名的property,这与赋值操作的相关行为一致:除了修改property的属性,还可以将property改为用getter或setter访问:在使用Object.defineProperty()时,property描述对象中的属性值可以部分忽略,当属性值有所忽略时,JavaScript中的处理规则如下:

如果property是新建的,则所有忽略的属性值均为false或undefined。如果property已存在,则所有忽略的属性值维持原样不变。

批量设置对象property的属性

如果需要一次性设置多个property的属性,可以使用Object.defineProperties()语句。该语句将返回修改后的对象。property属性设置规则

当对property属性进行修改时,必须遵循以下规则。如果违反规则,JavaScript将报TypeError错误:

如果对象不是extensible的,则只能修改已有property的属性,无法添加新的property。如果property的configurable属性为false,则无法修改configurable和enumerable属性的值,对于writable属性,可以将其从true改为false,但无法将其从false改为true。如果property由getter和setter定义,则getter和setter方法无法被修改。如果property的configurable属性和writable属性均为false,则property值不可改。如果property的writable属性为false,但其configurable属性为true,则property值依然可以修改。

推荐整理分享JavaScript对象的property属性详解(javascript对象的属性和方法),希望有所帮助,仅作参考,欢迎阅读内容。

JavaScript对象的property属性详解(javascript对象的属性和方法)

文章相关热门搜索词:JavaScript对象的属性和方法不用区分大小写,javascript对象的属性和方法,JavaScript对象的属性和方法不用区分大小写,JavaScript对象的创建,javascript对象的种类,javascript对象的属性和方法,javascript对象的属性和方法,JavaScript对象的创建,内容如对您有帮助,希望把文章链接给更多的朋友!

深入理解javascript的执行顺序 如果你不能理解javaScript语言的运行机制,或者简单地说,你不能掌握javascript的执行顺序,那你就犹如伯乐驾驭不了千里马,让千里马脱缰而出,四处乱

JavaScript中的prototype.bind()方法介绍 以前,你可能会直接设置self=this或者that=this等等,这样做当然也能起作用,但是使用Function.prototype.bind()会更好,看上去也更专业。下面举个简单的例子

JavaScript排序算法之希尔排序的2个实例 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率。但插入排序一般来说是低效的,因为插入排序每次只能将数据移动

标签: javascript对象的属性和方法

本文链接地址:https://www.jiuchutong.com/biancheng/373761.html 转载请保留说明!

上一篇:js原型继承的两种方法对比介绍(js原型继承和构造继承)

下一篇:深入理解javascript的执行顺序(深入理解ffmpeg pdf)

  • 纳税等级怎么从M变成B需要什么条件
  • 房产税税源信息采集错误已到申报期怎么办
  • 土地增值税怎么计算
  • 进出口环节税
  • 公对公打款开票
  • 个税申报表中的基本养老保险怎么填
  • 调整未分配利润影响所得税吗
  • 减免税属于政府转移支付吗
  • 设备租赁费用
  • 按月按季申报
  • 合并会计报表调整分录
  • 工会经费如何做会计分录科目
  • 教育服务增值税纳税义务发生时间
  • 购进原材料验收入库,贷款商业汇票结算
  • 建筑企业一般纳税人提供建筑服务属于老项目
  • 建筑业异地预缴税款的会计分录
  • 税盘被锁应该怎么办?
  • 外购商品对外赠送增值税怎么算
  • 工会筹备金怎么报
  • 固定资产清查表
  • 融资租赁的利息可以税前扣除吗
  • win10ie浏览器没有internet选项
  • 自来水公司的水压力是多少
  • win7为什么现在不能用了
  • mac os x 10.0
  • window10如何设置休眠时间
  • msgdlg.exe是什么意思
  • 公允价值变动损益会计处理
  • 实缴注册资本股权转让怎么交税
  • 企业的各项费用
  • vue3 element-plus
  • PyTorch 深度学习实战 |用 TensorFlow 训练神经网络
  • php实现base64图片上传方式实例代码
  • 投资者投资企业项目的主要目的是
  • php提交表单数据有哪几种方法
  • 管理费用科目核算的内容
  • 小规模纳税人通行费电子普票能抵扣吗
  • 在建工程可以核酸无形资产
  • 每月随工资发放的房补,本月至今未发
  • 免税收入货款要交税吗
  • 残疾人保障金汇算清缴的处理
  • 疫情期间社保减免了几个月
  • 怎么去银行买承兑
  • 补付预付账款账务处理分录
  • 公司付款给个人现金
  • 借贷不平衡是什么意思
  • 受托代销商品款计入存货吗
  • Win7/Win8.1/Win10的UAC对话框“是”点不了的原因及解决方法
  • 海尔电脑优盘启动键
  • Xp系统设置ip地址
  • linux动态库的制作
  • w10 office激活
  • 无法识别的选项
  • appservicesdkscripterror
  • os x10.10.4beta6下载地址 os x10.10.4beta6官方下载网址
  • win8.1怎么设置
  • itunes清理iphone垃圾
  • linux 用户进程
  • linux整理磁盘
  • OpenGL Tutorial: (1) Setting up OpenGL with Visual Studio
  • Android 使用mp4做礼物特效
  • Linux shell实现HTTP服务示例代码
  • shell脚本实现文件移动、复制等操作
  • div css table
  • css划动
  • js时间计算相减
  • svn服务端启动
  • linux命令sed的用法
  • 简述linux与windows相比,有哪些优势
  • linuxssh免密登录
  • jquery回车触发事件
  • android解析xml的方法中,将整个文件加载到内存
  • javascript模块化规范
  • 国税局国家公务员工资待遇
  • 湖南省国家税务总局官网登录入口
  • 深圳社保最迟每月几号交啊多少钱
  • 税控盘离线开票时间怎么查
  • 国有土地使用权出让和转让条例
  • 北京朝阳区电话区号是多少?
  • 车船税代收有发票吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设