你的位置:首页 > 软件开发 > Java > javascript之面向对象程序设计(对象和继承)

javascript之面向对象程序设计(对象和继承)

发布时间:2016-03-15 00:00:09
总结的文章略长,甚点。知识点预热引用类型:引用类型的值(对象)是引用类型的一个实例。在ECMAScript中,引用类型是一种数据结构,用于将数据和功能组织在一起。在其他面向对象语言中被称为类,虽然ECMAScript从技术上讲也是一门面向对象语言,但它不具备传统面向对象语言所支持 ...

javascript之面向对象程序设计(对象和继承)

总结的文章略长,甚点。

知识点预热

  • 引用类型:引用类型的值(对象)是引用类型的一个实例。在ECMAScript中,引用类型是一种数据结构,用于将数据和功能组织在一起。在其他面向对象语言中被称为类,虽然ECMAScript从技术上讲也是一门面向对象语言,但它不具备传统面向对象语言所支持的类和接口等基本结构而是通过别的形式实现类模板和继承。引用类型描述的是一类对象所具有的属性和方法。
  • 对象:对象是某个特定引用的实例,新对象是使用 new 操作符后跟一个构造函数来创建的。实例对象其实就是一组特定数据和具体功能的集合。
  • 构造函数:本身就是一个函数,只不过该函数是出于创建新对象的目的而定义的。通常用来为对象定义默认的属性和方法。
  • 举例: var person=new Object(); 保存对象(新实例)的变量 person 里的内容为这个对象(新实例)在内存堆中的地址。我们知道c语言是可以直接用代码访问变量的物理内存,所以我就想javascript能不能也能直接访问内存地址,谷歌关于javascript访问内存地址的有效信息也寥寥,得知javascript这种高级语言是并不能直接通过代码访问物理内存,需要进行脚本扩展接口等等。参考(javascript能不能访问物理内存?)。待以后学习深度加强专门研究一下。

 

Object类型

在ECMAScript中(就像在Java中的 java.lang.Object 对象一样), Object 类型是所有它的实例的基础, Object 类型所具有的任何属性和方法也同样可被更具体的对象所用。

javascript之面向对象程序设计(对象和继承)

JavaScript主要是通过原型链实现了面向对象中的实现继承(区分接口继承和实现继承),所以每当构造一个实例对象时便继承了 Object.prototype 上的方法,但这种原型链式的继承并不是复制方法的副本,而是引用(指向)式的继承。

  •  constructor: 保存着用于创建当前对象的函数,这里构造函数就是Object(); person.constructor;// function Object() { [native code] }
  •  hasOwnProperty(propertyName): 用于检查给定的属性在当前对象的实例中(而不是在实例的原型中)是否存在,返回布尔值。属性名以字符串形式给定。
    person.hasOwnProperty('constructor');// falseObject.prototype.hasOwnProperty('constructor');// true

    原标题:javascript之面向对象程序设计(对象和继承)

    关键词:JavaScript

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。