对照Java类分析 每一个Function就是一个对象(类)
//构造方法
function HelloWorld(){
alert("Hello world!");
}
使用JS中的prototype原型关键字进行赋值,比如为一个对象添加name属性和方法,如下:
//添加 成员变量 和 成员方法
HelloWorld.prototype={
name:'JavaScript',
sayHello : function(){
alert(this.name);
}
}
以上注意sayHello方法中的this关键字使用和Java中this的意思一样。
//添加 静态属性 和 静态方法
HelloWorld.age = "26";
HelloWorld.hello=function(){
alert(HelloWorld.age);
}
不使用Js的原型关键字prototype,声明对象属性和方法,如下:
function HelloWorld2(){
var privateProp = 'hello world 2!';
this.method = function(){
alert(privateProp);
}
this.name="hammer";
}
针对HelloWorld2测试
function _test2(){
var obj2 = new HelloWorld2();
obj2.method();
alert(obj2.name);
alert(HelloWorld2.privateProp); //undifined
alert(obj2.privateProp);//undifined
}
静态方法只能是 类调用
实例方法只能是 实例对象调用

被折叠的 条评论
为什么被折叠?



