var OBJ = (function(){
//varで宣言しているので、このfunction内のローカルな変数になる
var name = 'Steve';
return {
getName: function(){
return name;
},
sayHello: function(){
return 'Hello,' + name;
}
}
}());
OBJ.getName(); //Steve
OBJ.sayHello(); //Hello,Steve
OBJ.name; //undefined
var name は functionに囲われているので、その外には存在しないローカルな変数になる。
なので外からはアクセスできない
ローカル変数を変更するメソッドも作れる
return {
getName: function(){
return name;
},
sayHello: function(){
return 'Hello,' + name;
},
setName: function(val){
name = val;
}
}
getName: function(){
return name;
},
sayHello: function(){
return 'Hello,' + name;
},
setName: function(val){
name = val;
}
}
OBJ.setName('unko');
OBJ.getName(); //unko;
0 件のコメント:
コメントを投稿