求和的调用者只需传参调用就行了,但是设计人员的工作很复杂。
静态成员:
function person(name,age){
this.name=name;
}
person.useTools=true//person也是对象可加属性useTools
调用person.useTools
function person(name){
var age=100;
function pm(){
console.log('personal method')//私有的,外部访问不到
}
this.name=name;
this.test=function(){}//公有的,外部可以调用。
}
function person(name){
var age=100;
function pm(){console.log(this.name)}//输不出来,因为调用的是window
this.name=pname;
this.test=function(){}
pm();
}
解决方法一:
function person(pname){
var age=100;
function pm(){
console.log(this.name)
}
this.name=pname;
this.test=function(){
console.log('public method')
pm.call(this)
}
}
解决方法二:
function person(name){
function pm(){console.log(self.name)}
var self={
name:pname;
test:function(){pm()}
}
return self;
}
var p2=person('cj')
p2.test()
网友评论