javascript 类定义的4种方法


Posted in Javascript onSeptember 12, 2009
/* 
工厂方式--- 创建并返回特定类型的对象的 工厂函数 ( factory function ) 
*/ 
function createCar(color,doors,mpg){ 
var tempCar = new Object; 
tempCar.color = color; 
tempCar.doors = doors; 
tempCar.mpg = mpg; 
tempCar.showCar = function(){ 
alert(this.color + " " + this.doors); 
} 
return tempCar; 
} /* 
构造函数方式--- 构造函数看起来很像工厂函数 
*/ 
function Car(color,doors,mpg){ 
this.color = color; 
this.doors = doors; 
this.mpg = mpg; 
this.showCar = function(){ 
alert(this.color); 
}; 
} 
/* 
原型方式--- 利用了对象的 prototype 属性,可把它看成创建新对象所依赖的原型 
*/ 
function Car(color,doors,mpg){ 
this.color = color; 
this.doors = doors; 
this.mpg = mpg; 
this.drivers = new Array("nomad","angel"); 
} 
Car.prototype.showCar3 = function(){ 
alert(this.color); 
}; 
/* 
混合的构造函数 /原型方式--- 用构造函数定义对象的所有非函数属性,用原型方式定义对象的函数属性(方法) 
*/ 
function Car(sColor, iDoors, iMpg) { 
this.color = sColor; 
this.doors = iDoors; 
this.mpg = iMpg; 
this.drivers = new Array("Mike", "Sue"); 
} 
Car.prototype.showColor = function () { 
alert(this.color); 
}; 
/* 
动态原型方法--- 在构造函数内定义非函数属性,而函数属性则利用原型属性定义。唯一的区别是赋予对象方法的位置。 
*/ 
function Car(sColor, iDoors, iMpg) { 
this.color = sColor; 
this.doors = iDoors; 
this.mpg = iMpg; 
this.drivers = new Array("Mike", "Sue"); 
if (typeof Car._initialized == "undefined") { 
Car.prototype.showColor = function () { 
alert(this.color); 
}; 
Car._initialized = true; 
} 
} //该方法使用标志( _initialized )来判断是否已给原型赋予了任何方法。
Javascript 相关文章推荐
Javascript查询DBpedia小应用实例学习
Mar 07 Javascript
解析Jquery的LigerUI如何实现文件上传
Jul 09 Javascript
window.onload和$(function(){})的区别介绍
Oct 30 Javascript
Javascript实现简单的富文本编辑器附演示
Jun 16 Javascript
javascript运动效果实例总结(放大缩小、滑动淡入、滚动)
Jan 08 Javascript
AngularJS中使用HTML5手机摄像头拍照
Feb 22 Javascript
谈一谈bootstrap响应式布局
May 23 Javascript
javascript入门之window对象【新手必看】
Nov 22 Javascript
JS变量及其作用域
Mar 29 Javascript
微信小程序使用Socket的实例
Sep 19 Javascript
JS动态添加元素及绑定事件造成程序重复执行解决
Dec 07 Javascript
AJAX在JQuery中的应用详解
Jan 30 jQuery
一个简单的javascript类定义例子
Sep 12 #Javascript
一个简单的JavaScript 日期计算算法
Sep 11 #Javascript
关于javascript 回调函数中变量作用域的讨论
Sep 11 #Javascript
javascript 一些用法小结
Sep 11 #Javascript
JS 日期验证正则附asp日期格式化函数
Sep 11 #Javascript
jquery 简单导航实现代码
Sep 11 #Javascript
禁止JQuery中的load方法装载IE缓存中文件的方法
Sep 11 #Javascript
You might like
各种咖啡的英文名子是什么
2021/03/03 新手入门
WordPress中调试缩略图的相关PHP函数使用解析
2016/01/07 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
JQuery 表格操作(交替显示、拖动表格行、选择行等)
2009/07/29 Javascript
jQuery对html元素取值与赋值的方法
2013/11/20 Javascript
使用jquery实现IE下按backspace相当于返回操作
2014/03/18 Javascript
JavaScript数值转换的三种方式总结
2014/07/31 Javascript
jQuery使用before()和after()在元素前后添加内容的方法
2015/03/26 Javascript
JavaScript的ExtJS框架中数面板TreePanel的使用实例解析
2016/05/21 Javascript
使用AngularJS对表单提交内容进行验证的操作方法
2017/07/12 Javascript
JavaScript中正则表达式判断匹配规则及常用方法
2017/08/03 Javascript
安装vue-cli报错 -4058 的解决方法
2017/10/19 Javascript
Nodejs 和 Electron ubuntu下快速安装过程
2018/05/04 NodeJs
自定义vue组件发布到npm的方法
2018/05/09 Javascript
利用vue.js把静态json绑定bootstrap的table方法
2018/08/28 Javascript
详解webpack之图片引入-增强的file-loader:url-loader
2018/10/08 Javascript
js实现网页同时进行多个倒计时功能
2019/02/25 Javascript
基于vue hash模式微信分享#号的解决
2020/09/07 Javascript
JS操作JSON常用方法(10w阅读)
2020/12/06 Javascript
Python使用Redis实现作业调度系统(超简单)
2016/03/22 Python
Python中对象的引用与复制代码示例
2017/12/04 Python
Python实现的随机森林算法与简单总结
2018/01/30 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
Windows下python3.6.4安装教程
2018/07/31 Python
python 的topk算法实例
2020/04/02 Python
python爬取网易云音乐热歌榜实例代码
2020/08/07 Python
Python3.7安装PyQt5 运行配置Pycharm的详细教程
2020/10/15 Python
详解Django中的FBV和CBV对比分析
2021/03/01 Python
css3实现顶部社会化分享按钮示例
2014/05/06 HTML / CSS
阿迪达斯丹麦官网:adidas丹麦
2016/10/01 全球购物
澳大利亚在线百货商店:Real Smart
2017/08/13 全球购物
英国蛋糕装饰用品一站式商店:Craft Company
2019/03/18 全球购物
高三自我鉴定怎么写
2013/10/19 职场文书
化验室技术员岗位职责
2013/12/24 职场文书
合作经营协议书范本
2014/09/16 职场文书
护士个人年终总结
2015/02/13 职场文书