javascript面向对象理解整理

面向对象的力量、概念

能力

  1. 后续 –
    由另外一个类似(或多个像样)得来类的性能和艺术的力
  2. 多态 –
    编写能因为多智运行的函数或方式的力量
  3. 打包、聚集 –
    存储信息及对象,并且对象同对象中用信息通信,各自有信息隐藏

概念

在因类的面向对象方式受到,对象(object)依靠 类(class)来产生。而在根据原型的面向对象方式遭,对象(object)则是乘 构造器(constructor)利用 原型(prototype)构造出的。

{ES6概念:ECMA-262
把目标(object)定义为“属性的无序集合(/数组),每个属性存放一个原始值、对象或函数”,对象呢堪分包对象。
/?  构成:在 ECMAScript
中,对象由特性(attribute)构成,特性可是原始值,也得以是引用值。如果特性存放的凡函数,它以给视作对象的计(method),否则该特性深受当作对象的性(property)。 } 方法和特性很相似,
不同之是:一个凡函数,另一个足为定义也函数。JavaScript可用方法作类
如:Function Method(){}。

数据类型

每当 ECMAScript
中,变量可以存在个别栽类型的价值,即原始值和引用值。ECMAScript有6种基本数据类,即
Boolean、Number、String、Null、Undefined、Object。前5种植是原始类型,Object对象呢援类型。Object对象是叙ECMAScript对象的唯一一个数据类型,JavaScript
中的每个对象都是 Object目标的实例且持续它们具有的性质和方。所以理解了
Object对象,就足以还好地领悟外对象。

Object
对象有下列属性:

constructor
对创建对象的函数的援(指针)。对于
Object 对象,该指针指向原始之 Object() 函数。

Prototype
本着该对象的对象原型的援。对于有的目标,它默认返回
Object 对象的一个实例。

Object
对象还有着几独办法:

hasOwnProperty(property)
判断目标是不是有某个特定的属性。必须用字符串指定该属性。(例如,o.hasOwnProperty(“name”))

IsPrototypeOf(object)
看清该对象是不是为外一个对象的原型。

PropertyIsEnumerable
判定给定的特性是否好为此
for…in 语词进行枚举。

ToString()
回到对象的原始字符串表示。对于
Object 对象,ECMA-262 没有定义是价值,所以不同的 ECMAScript
实现所有不同之价。

ValueOf()
返最适合该对象的原始值。对于众多目标,该方式返回的值都跟
ToString() 的归来值相同。

原始类型的援类型&内置对象

  定义一个变量为: new Boolean(boolean)/new
Number(number)/ new String(string)
 注意括号中吗实际的原始值。即是各个原始类型的援类型

 

typeof、instance、valueof

 

原型可以存放方法并联合享属性

 

理学习参考
https://www.ibm.com/developerworks/cn/web/1304\_zengyz\_jsoo/;
http://www.w3school.com.cn/js/pro\_js\_object\_oriented.asp
;http://www.cnblogs.com/TomXu/archive/2012/02/06/2330609.html