基于JavaScript自定义构造函数的详解说明


Posted in Javascript onApril 24, 2013

Javascript并不像Java、C#等语言那样支持真正的类。但是在js中可以定义伪类。做到这一点的工具就是构造函数和原型对象。首先介绍js中的构造函数。

Javascript中创建对象的语法是在new运算符的后面跟着一个函数的调用。如

 var obj = new Object();
 var date = new Date();

运算符new首先创建一个新的没有任何属性的对象,然后调用该函数,把新的对象作为this关键字的值传递。
var date = new Date()的伪代码的实现就是

var obj = {};

var date = Date.call(obj);

构造函数的作用就是初始化一个新创建的对象,并在使用对象前设置对象的属性。如果定义自己的构造函数,只需要编写一个为this添加属性的函数就可以了。下面的代码定义了一个构造函数:

 function Rectangle(w, h)
 {
     this.width = w;
     this.height = h;
 }

然后,可以使用new运算符调用这个函数来创建对象的实例

var rect = new Rectange(4,8);

构造函数的返回值

Javascript中的构造函数通常没有返回值。但是,函数是允许有返回值的。如果一个构造函数有一个返回值,则返回的对象成为new表达式的值。在此情况下,作为this的对象将会被抛弃。

Javascript 相关文章推荐
在视频前插入广告
Nov 20 Javascript
jQuery chili图片远处放大插件
Nov 30 Javascript
JQuery实现简单时尚快捷的气泡提示插件
Dec 20 Javascript
利用webqq协议使用python登录qq发消息源码参考
Apr 08 Javascript
JS获取地址栏参数的小例子
Aug 23 Javascript
JS判断变量是否为空判断是否null
Jul 25 Javascript
jQuery的几个我们必须了解的特点
May 03 Javascript
AngularJS 最常用的功能汇总
Feb 17 Javascript
JS树形菜单组件Bootstrap TreeView使用方法详解
Dec 21 Javascript
Bootstrap Table使用整理(一)
Jun 09 Javascript
详解node.js中的npm和webpack配置方法
Jan 21 Javascript
基于vue的tab-list类目切换商品列表组件的示例代码
Feb 14 Javascript
Javascript new Date().valueOf()的作用与时间戳由来详解
Apr 24 #Javascript
使用Grunt.js管理你项目的应用说明
Apr 24 #Javascript
javascript获取网页中指定节点的父节点、子节点的方法小结
Apr 24 #Javascript
jQuery文本框(input textare)事件绑定方法教程
Apr 24 #Javascript
为JS扩展Array.prototype.indexOf引发的问题探讨及解决
Apr 24 #Javascript
Dom 学习总结以及实例的使用介绍
Apr 24 #Javascript
jQuery 关于伪类选择符的使用说明
Apr 24 #Javascript
You might like
php二分法在IP地址查询中的应用
2008/08/12 PHP
PHP中一些可以替代正则表达式函数的字符串操作函数
2014/11/17 PHP
php从数组中随机选择若干不重复元素的方法
2015/03/14 PHP
SESSION存放在数据库用法实例
2015/08/08 PHP
PHP的mysqli_stmt_init()函数讲解
2019/01/24 PHP
PHPstorm激活码2020年5月13日亲测有效
2020/09/17 PHP
javascript实现二分查找法实现代码
2007/11/12 Javascript
javascript XML数据显示为HTML一例
2008/12/23 Javascript
JQuery的$命名冲突详细解析
2013/12/28 Javascript
jQuery实现可用于博客的动态滑动菜单
2015/03/09 Javascript
js获得当前系统日期时间的方法
2015/05/06 Javascript
jQuery Mobile开发中日期插件Mobiscroll使用说明
2016/03/02 Javascript
详细分析Javascript中创建对象的四种方式
2016/08/17 Javascript
模拟javascript中的sort排序(简单实例)
2016/08/17 Javascript
微信小程序 购物车简单实例
2016/10/24 Javascript
js初始化验证实例详解
2016/11/26 Javascript
使用UrlConnection实现后台模拟http请求的简单实例
2017/01/04 Javascript
Node 代理访问的实现
2019/09/19 Javascript
js实现3D粒子酷炫动态旋转特效
2020/09/13 Javascript
[01:56]生活中的妖精之七夕特别档
2016/08/09 DOTA
python监控linux内存并写入mongodb(推荐)
2017/09/11 Python
python excel使用xlutils类库实现追加写功能的方法
2018/05/02 Python
Python版名片管理系统
2018/11/30 Python
python定时检测无响应进程并重启的实例代码
2019/04/22 Python
Python整数与Numpy数据溢出问题解决
2019/09/11 Python
pygame实现五子棋游戏
2019/10/29 Python
python tkinter canvas使用实例
2019/11/04 Python
Window版下在Jupyter中编写TensorFlow的环境搭建
2020/04/10 Python
地图可视化神器kepler.gl python接口的使用方法
2020/12/22 Python
毕业生应聘幼儿园的自荐信
2013/11/20 职场文书
出生医学证明样本
2014/01/17 职场文书
心理健康日活动总结
2014/05/08 职场文书
销售经理工作检讨书
2015/02/19 职场文书
法制工作总结2015
2015/07/23 职场文书
php访问对象中的成员的实例方法
2021/11/17 PHP
Python学习之时间包使用教程详解
2022/03/21 Python