javascript 摸拟 class
以及 实例变量,实例方法; 类变量,类方法
function Circle(r){
this.r = r; // this.r 这里它变就实例变量
}
Circle.PI = 3.14 // 类方法,只能在Circle上调用
Circle.prototype.area=function(){
return this.r * Circle.PI;
} // 实例方法
Circle.max = function(a,b){
return a.r > b.r ? a : b
} // 类方法
有时候我们大概也需要用到 私有属性 :
第一个“发明”的人据说是Douglas Crockfork, 想出这方法也挺绝的。
function Circle(r) {
this.r = function() { return r; }
}
//之后r的值将不会被外界改变。
Circle.PI = 3.14;
Circle.prototype.area = function() {
return Circle.PI * this.r() * this.r();
}
var c = new Circle(1.22);
// 以下情况都不能改变 半径的 值
c.r = function(){return 3333}
c.r = 2222;
//如此一来可以保证r的值不小心给改变了。
本文介绍如何使用JavaScript模拟面向对象编程中的类概念,包括实例变量与方法、类变量与方法的定义,并探讨了如何实现私有属性保护。

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



