JS 面向對象的5鐘寫法
更新時間:2009年07月31日 16:15:50 作者:
定義Circle類,擁有成員變量r,常量PI和計算面積的成員函數(shù)area()
Java代碼
//第1種寫法
function Circle(r) {
this.r = r;
}
Circle.PI = 3.14159;
Circle.prototype.area = function() {
return Circle.PI * this.r * this.r;
}
var c = new Circle(1.0);
alert(c.area());
Java代碼
//第2種寫法
var Circle = function() {
var obj = new Object();
obj.PI = 3.14159;
obj.area = function( r ) {
return this.PI * r * r;
}
return obj;
}
var c = new Circle();
alert( c.area( 1.0 ) );
Java代碼
//第3種寫法
var Circle = new Object();
Circle.PI = 3.14159;
Circle.Area = function( r ) {
return this.PI * r * r;
}
alert( Circle.Area( 1.0 ) );
Java代碼
//第4種寫法
var Circle={
"PI":3.14159,
"area":function(r){
return this.PI * r * r;
}
};
alert( Circle.area(1.0) );
Java代碼
//第5種寫法
var Circle = new Function("this.PI = 3.14159;this.area = function( r ) {return r*r*this.PI;}");
alert( (new Circle()).area(1.0) );
大家來討論一下這五種寫法,它們的優(yōu)缺點,哪個比較規(guī)范,特別是最后兩種,經常見到。
復制代碼 代碼如下:
//第1種寫法
function Circle(r) {
this.r = r;
}
Circle.PI = 3.14159;
Circle.prototype.area = function() {
return Circle.PI * this.r * this.r;
}
var c = new Circle(1.0);
alert(c.area());
Java代碼
復制代碼 代碼如下:
//第2種寫法
var Circle = function() {
var obj = new Object();
obj.PI = 3.14159;
obj.area = function( r ) {
return this.PI * r * r;
}
return obj;
}
var c = new Circle();
alert( c.area( 1.0 ) );
Java代碼
復制代碼 代碼如下:
//第3種寫法
var Circle = new Object();
Circle.PI = 3.14159;
Circle.Area = function( r ) {
return this.PI * r * r;
}
alert( Circle.Area( 1.0 ) );
Java代碼
復制代碼 代碼如下:
//第4種寫法
var Circle={
"PI":3.14159,
"area":function(r){
return this.PI * r * r;
}
};
alert( Circle.area(1.0) );
Java代碼
復制代碼 代碼如下:
//第5種寫法
var Circle = new Function("this.PI = 3.14159;this.area = function( r ) {return r*r*this.PI;}");
alert( (new Circle()).area(1.0) );
大家來討論一下這五種寫法,它們的優(yōu)缺點,哪個比較規(guī)范,特別是最后兩種,經常見到。
您可能感興趣的文章:
- JavaScript面向對象三個基本特征實例詳解【封裝、繼承與多態(tài)】
- JS面向對象基礎講解(工廠模式、構造函數(shù)模式、原型模式、混合模式、動態(tài)原型模式)
- Javascript 面向對象(一)(共有方法,私有方法,特權方法)
- 面向對象的Javascript之二(接口實現(xiàn)介紹)
- js面向對象之常見創(chuàng)建對象的幾種方式(工廠模式、構造函數(shù)模式、原型模式)
- javascript 面向對象全新理練之數(shù)據(jù)的封裝
- javascript 面向對象編程基礎 多態(tài)
- 徹底理解js面向對象之繼承
- JavaScript面向對象編程入門教程
- js面向對象之靜態(tài)方法和靜態(tài)屬性實例分析
- JavaScript面向對象之七大基本原則實例詳解
相關文章
學習JS面向對象成果 借國慶發(fā)布個最新作品與大家交流
學習JS面向對象成果,借國慶發(fā)布個最新作品與大家交流,大家可以看下。2009-10-10
JavaScript isPrototypeOf和hasOwnProperty使用區(qū)別
JavaScript isPrototypeOf和hasOwnProperty的使用技巧,需要的朋友的朋友可以參考下。2010-03-03

