// 闭包函数 实现方法1
function test(r){
this.r=r
}
test.pi=3.14
test.prototype.area=function(){
return test.pi * this.r * this.r
}
// 闭包函数 实现方法2
var test2=function(){
var obj=new Object();
obj.pi=3.14;
obj.area=function(r){
return this.pi*r*r;
}
return obj;
}
var i=new test2;
console.log(i.area(8))
// 闭包函数实现方法3
var test3=new Object();
test3.pi=3.14;
test3.area=function(r){
return this.pi*r*r;
}
console.log(test3.area(8))
//闭包函数实现方法4
var test4={
'pi':3.14,
'area':function(r){
return this.pi*r*r;
}
};
console.log(test4.area(8))
//闭包函数实现方法5
var test5=new Function('this.pi=3.14;this.area=function(r){return this.pi*r*r}');
var i=new test5();
console.log(i.area(9))