位置: 编程技术 - 正文

学习javascript面向对象 理解javascript对象(javascript如何学)

编辑:rootadmin

推荐整理分享学习javascript面向对象 理解javascript对象(javascript如何学),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript学到什么程度,javascript学了有什么用,javascript要学哪些,javascript如何学,javascript如何学,javascript怎么学,javascript要学到什么程度,javascript学了有什么用,内容如对您有帮助,希望把文章链接给更多的朋友!

一、编程思想面向过程:以过程为中心,自顶向下逐步细化,程序看成一系列函数调用的集合面向对象:对象作为程序的基本单元,程序分解为数据和相关操作二、类、对象类:对具有相同特性和特征事物的抽象描述对象:某种类型对应的具体事物三、面向对象的三大特性封装:隐藏实现细节,实现代码模块化继承:扩展已存在的代码模块,实现代码重用 多态:接口的不同实现方式,实现接口重用四、对象定义:无序属性的集合,其属性可以包含基本值、对象或者函数

五、内部属性类型:内部属性无法直接访问,ECMAScript5把它们放在两对方括号中,分为数据属性和访问器属性[1]数据属性包含一个数据值的位置,在这个位置可以读取和写入值。数据属性有4个特性:    a、[[Configurable]]: 表示能否通过delete删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性,直接在对象上定义的属性,默认值为true    b、[[Enumerable]]: 表示能否通过for-in循环返回属性,直接在对象上定义的属性,默认值为true    c、[[Writable]]: 表示能否修改属性的值,直接在对象上定义的属性,默认值为true    d、[[Value]]: 包含这个属性的数据值,读取属性值的时候,从这个位置读;写入属性值的时候,把新值保存在这个位置。直接在对象上定义的属性,默认值为undefined[2]访问器属性不包含数据值,包含一对getter和setter函数(不过这两个函数不是必需的)。读取访问器属性时,会调用getter函数,这个函数负责返回有效的值;在写入访问器属性时,会调用setter函数并传入新值,这个函数负责决定如何处理函数。访问器属性有如下4个特性:    a、[[Configurable]]: 表示能否通过delete删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性。直接在对象上定义的属性,默认值为true    b、[[Enumerable]]: 表示能否通过for-in循环返回属性,直接在对象上定义的属性,默认值为true    c、[[Get]]: 在读取属性时调用的函数。默认值为undefined    d、[[Set]]: 在写入属性时调用的函数。默认值为undefined六、修改内部属性:使用ECMAScript5的object.defineProperty()方法,该方法接收三个参数:属性所在的对象、属性的名字和一个描述符对象 [注意1]IE8是第一个实现Object.defineProperty()方法的浏览器版本。然而,这个版本的实现存在诸多限制:只能在DOM对象上使用这个方法,而且只能创建访问器属性。由于实现不彻底,不建议在IE8中使用Object.defineProperty()方法 [注意2]不支持Object.defineProperty()方法的浏览器中不能修改[[Configurable]]和[[Enumerable]][1]修改数据属性

[注意]一旦把属性定义为不可配置的,就不能再把它变回可配置了,也就是说可以多次调用Object.defineProperty()修改同一属性,但在把configurable设置为false之后,就有限制了

学习javascript面向对象 理解javascript对象(javascript如何学)

[2]修改访问器属性

[注意1]只指定getter意味着属性是不能写

[注意2]只指定setter意味着属性不能读

【补充】创建访问器属性的用两个非标准的方法:__defineGetter__()和__defineSetter__()

七、定义多个属性:ECMAScript5定义了一个Object.defineProperties()方法,利用这个方法可以通过描述符一次定义多个属性,这个方法接收两个对象参数:第一个对象是要添加和修改其属性的对象,第二个对象的属性与第一个对象要添加或修改的一一对应

八、读取属性特性:使用ECMAScript5的Object.getOwnPropertyDescriptor()方法,可以取得给定属性的描述符。该方法接收两个参数:属性所在对象和要读取其描述符的属性名称,返回值是一个对象。[注意]可以针对任何对象——包括DOM和BOM对象,使用Object.getOwnPropertyDescriptor()方法

标签: javascript如何学

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

上一篇:基于JavaScript实现移除(删除)数组中指定元素(基于javascript的毕业设计)

下一篇:学习javascript面向对象 掌握创建对象的9种方式(javascript要学到什么程度)

  • 小型微利企业的从业人数和资产总额
  • 车船税每年都要交吗,一般是多少钱交强险可以晚交吗
  • 企业所得税如何抵扣
  • 已认证专票有误怎么回事
  • 合同取得成本如何分析
  • 以前年度亏损弥补会计分录
  • 行政单位工资支出标准
  • 公司用股东的钱交税吗
  • 电子设备税费
  • 建筑施工企业质量体系环境包括
  • 收到借款确认书模板
  • 快递行业的收入与成本
  • 固定资产盘盈怎么算
  • 一次性收到跨期租赁费会计分录
  • 京东电子商务平台业务流程
  • 酒店业小规模纳税人可以享受2023年应纳税额抵减政策吗
  • 一般纳税人的进项税额计入成本吗
  • 重置申报清册是什么意思
  • 旅游业税率是多少,企业税是按季度缴纳吗
  • 年所得12万元以上个人
  • 旅行社税收
  • 企业取得代扣代缴个税手续费分录
  • 工伤赔偿工伤保险超出部分
  • windows10如何关闭病毒和威胁防护设置
  • 应如何做会计分录表
  • 增值税发票认证操作流程
  • win10我无法更改某些设置
  • hotkey osd driver可以卸载吗
  • 收取逾期包装物押金怎么算税
  • 企业将自有房产怎么处理
  • ios.开发
  • react by
  • 老税号的发票还能认证吗
  • 稽查补缴以前年度的社保
  • chatcters
  • 软考备考时间
  • 独立的分公司可以注册吗
  • 发票内容类型怎么填
  • 递归是从底向上逐层计算的
  • python 记录日志
  • 用友t3资产负债表怎么生成季报
  • 对方发票丢了能红冲重开吗
  • 预付费卡开票
  • 租金收入怎么做分录
  • 收到发票怎么写摘要
  • 劳务费个税账务处理办法
  • 以前年度多计提成本怎么处理
  • 社保阶段性减免范围
  • 增值税申报成功了忘了缴款
  • 实收资本未实缴是否罚款
  • 平均净资产怎么算公式的
  • 虚开发票但是没有成本如何做账?
  • 专票先不认证如何申报增值税
  • 金税盘发票认证怎么操作流程
  • 印花税可以去地方申报吗
  • 什么是经营所得现金
  • 销售货物没开票是不是不交税
  • 收不回来的其他应收款如何坏账处理
  • 不含税价换算成含税价怎么算
  • 建筑企业其他业务收入范围
  • mysql三层架构
  • mysql太慢
  • 在linux2.4.0版本中
  • freebsd操作命令
  • win8删除所有内容
  • 怎么修复windows update
  • Mac借助其他电脑做系统
  • linux系统如何进入终端
  • win7系统磁盘分区必须分区为什么才能安装
  • win8系统怎么调出运行窗口
  • linuxvim编辑器的用法
  • androidannotations的background和UiThread配合使用参考
  • 自动关机的
  • 如何用dos修复引导
  • Shell脚本中不同进制数据转换的例子(二进制、八进制、十六进制、base64)
  • canvas的原理
  • jquery checkbox无法用attr()二次勾选问题的解决方法
  • javascript !
  • 残疾人就业有哪些选择
  • 上市公司季报有哪些内容
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设