Javascript中的this详解

*本文代码中使用的 function dump(v,title), 是一个自己写的输出变量描述的函数。

如果你准备在JavaScript中写类,那么你必需对关键字 this 的使用有深刻的理解:

这是JavaScript手册中对 this的简单解释:

this:指当前对象。

对于 JScript 的客户版本,如果在其他所有对象的上下文之外使用 this,则它指的是 window 对象。

继续阅读“Javascript中的this详解”

(15)

Javascript类-构造方法和原型方法的区别

对Javascript来说,方法在本质上也是一种属性。

构 造方法 和构造属性一样,它是分别存储于每个实例之中的,相互之间是完全独立。

原型方法 和原型属性一样,他是存储于原型中的,每个实例中存储的实际上一 个指向原型的指针。

所有对原型方法的修改会影响到所有实例,而构造方法实际上只能通过实例来访问和修改,也只会影响到相应的实例。

先写结论:方法通常应该使用原型模式定义,并且在必要时通过原型来动态重定义,避免使用构造模式定义方法。

继续阅读“Javascript类-构造方法和原型方法的区别”

(28)

Javascript类- 几种属性的定义方式及区别

几种属性:

先看代码,这段代码中出现了类定义中可能使用到5种属性或者变量

function car(param1,param2){
    //构造变量
    var varProperty = 'This is a var Perperty';
    //构造属性
    this.constructProperty = 'This is a construct Property'
}

//原形属性
car.prototype.prototypeProperty = 'This is a prototype property';

//静态属性
car.staticProperty = 'This is a static property';

继续阅读“Javascript类- 几种属性的定义方式及区别”

(12)