JavaScript类创建的几种方式

简介: /*******************JavaScript默认规则*********** 1.类名首字符大写 2.方法名首字符小写 3.属性首字符大写 4.字段全小写 5.常量全大写 ***********************************************/ ...
/*******************JavaScript默认规则***********
1.类名首字符大写
2.方法名首字符小写
3.属性首字符大写
4.字段全小写
5.常量全大写
***********************************************/

//*****************公共方法********************
function showColor(){
	alert(this.Color);
}


1、工厂方式代码示例

function
CreateCar(sColor, iDoors, iMpg) { var oTempCar = new Object(); oTempCar.Color = sColor; oTempCar.Door = iDoors; oTempCar.Mpg = iMpg; oTempCar.ShowColor = showColor;//将此函数定义在外部,保证每个对象调用的都是一个方法 return oTempCar; } //var oCar1 = CreateCar("red",4,23); 使用时需要实例化一个对象 2、构造函数方式代码
function
Car(sColor, iDoors, iMpg) {   this.Color = sColor;   this.Doors = iDoors;   this.Mpg = iMpg;   this.ShowColor = showColor; //将此函数定义在外部,保证每个对象调用的都是一个方法 } //var car1=new Car("red",4,23); 使用时需要实例化一个对象 3、原型方式代码
function Car() { } Car.prototype.Color = "red"; Car.prototype.Door = 4; Car.prototype.Mpg = 23; Car.prototype.Drivers = new Array("Mike", "Sue"); Car.prototype.ShowColor = showColor(); //var car1=new Car(); 使用时需要实例化一个对象 4、混合的构造函数/原型方式

//使用构造函数定义对象的所有非函数属性,使用原型方法定义函数属性(这里指方法) function Car(sColor, iDoors, iMpg) { //构造函数   this.Color = sColor;   this.Doors = iDoors;   this.Mpg = iMpg; } Car.prototype.ShowColor = showColor; //原型方法 //var car1=new Car("red",4,23); 使用时需要实例化一个对象 5、动态原型方式

function
Car(sColor, iDoors, iMpg) {   this.Color = sColor;   this.Doors = iDoors;   this.Mpg = iMpg;   if (typeof Car._initialized == "undefined") {     Car.prototype.ShowColor = showColor;     Car._initialized = true;   } } //var car1=new Car("red",4,23); 使用时需要实例化一个对象 6、混合工厂方式
function CreateCar(sColor, iDoors, iMpg) {   var oTempCar = new Object();   oTempCar.Color = sColor;   oTempCar.Door = iDoors;   oTempCar.Mpg = iMpg;   oTempCar.ShowColor = showColor; //将此函数定义在外部,保证每个对象调用的都是一个方法   return oTempCar; } //var oCar1=new CreateCar("red",4,23); 使用时需要实例化一个对象
目录
相关文章
|
25天前
|
JavaScript
js开发:请解释什么是ES6的类(class),并说明它与传统构造函数的区别。
ES6的类提供了一种更简洁的面向对象编程方式,对比传统的构造函数,具有更好的可读性和可维护性。类使用`class`定义,`constructor`定义构造方法,`extends`实现继承,并可直接定义静态方法。示例展示了如何创建`Person`类、`Student`子类以及它们的方法调用。
21 2
|
28天前
|
JavaScript 前端开发
js开发:请解释原型继承和类继承的区别。
JavaScript中的原型继承和类继承用于共享对象属性和方法。原型继承利用原型链查找属性,节省内存但不支持私有成员。类继承通过ES6的class和extends实现,支持私有成员但占用更多内存。两者各有优势,适用于不同场景。
18 0
|
1月前
uni-app 65egg.js聊天类chat.js封装(二)
uni-app 65egg.js聊天类chat.js封装(二)
25 1
|
5月前
|
JavaScript 前端开发 Java
javascript实现像java、c#之类的sleep暂停的函数功能
javascript实现像java、c#之类的sleep暂停的函数功能
41 0
|
1月前
uni-app 66聊天类chat.js封装(三)
uni-app 66聊天类chat.js封装(三)
26 6
|
1月前
uni-app 64聊天类chat.js封装(一)
uni-app 64聊天类chat.js封装(一)
22 2
|
2月前
|
JavaScript 索引
js之数组,对象,类数组对象
js之数组,对象,类数组对象
|
3月前
|
JSON JavaScript 前端开发
【面试题】JS判断两个数组相等的4类方法
【面试题】JS判断两个数组相等的4类方法
|
4月前
|
存储 JavaScript 前端开发
对象和类:JS是一种基于对象的语言,可以创建和使用自定义对象。ES6引入了类的概念,使得面向对象编程更加方便。
对象和类:JS是一种基于对象的语言,可以创建和使用自定义对象。ES6引入了类的概念,使得面向对象编程更加方便。
24 0
|
6月前
|
存储 JavaScript 前端开发
带你读《现代Javascript高级教程》二十三、Date类:日期和时间处理(1)
带你读《现代Javascript高级教程》二十三、Date类:日期和时间处理(1)