由浅到深了解JavaScript类(4)
作者:泣红亭 来源:无忧脚本 时间:2008-06-16 13:20:00
构造函数
一个类在初始化的时候其实也是一个函数的执行过程,这个函数就是构造函数,我们看一下下边的代码:
function WuYouUser()
{
this.Name = "泣红亭"; //默认定义为泣红亭
alert(this.Name);
}
var Wo = new WuYouUser();//可以看到出现一个窗口显示泣红亭三个字
可以看出类的定义不仅仅是定义了它的属性与方法,还同时可以加入一些代码,而这些代码就是该类的构造函数的代码,在实例声明过程中被执行!
其实说起来,类的属性与类的方法都是在构造函数里执行定义的,看下边的代码
function WuYouUser()
{
this.Name = "泣红亭";
return;
this.Sex = "男";
}
var Wo = new WuYouUser();
document.write(Wo.Name); //泣红亭
document.write(Wo.Sex); //undefined,即未定义
看得出什么?Sex属性是在return;之后的,而WuYouUser类的构造函数遇到return即停止运行,换句话说this.Sex = "男";这一行是没有被执行,即Sex属性根本没有被定义!
构造函数可以有参数,参数值在声明实例的时候被传入:
function WuYouUser(Name)
{
this.Name = Name;
}
var Wo = new WuYouUser("泣红亭");
document.write(Wo.Name); //泣红亭
构造函数不需要返回值,但如果你设置了返回值,可以把它当成一个函数来使用
function Sum(a, b)
{
this.a = a;
this.b = b;
return this.a + this.b;
}
document.write(Sum(12, 23)); //输出的是12与23的和35
var Obj = new Sum(12,23);
document.write(Obj.a) // 12
document.write(Obj.b) // 23
感觉挺奇妙,对吧?我写这文章写着写着也觉得挺奇妙的,呵呵!
但强烈建议不要把一个类当成一个函数来使用!如果你需要的是一个函数,请直接写成函数而不要写成类,以免搞混了。
标签:类,javascript,编程
0
投稿
猜你喜欢
微信小程序新手教程之启动页的重要性
2023-07-02 05:26:00
golang中如何保证精度的方法
2024-04-26 17:23:22
浅谈数据库日期类型字段设计应该如何选择
2024-01-21 13:55:21
tensorflow模型转ncnn的操作方式
2022-10-29 15:55:19
Python 如何求矩阵的逆
2021-07-22 23:28:43
学习CSS布局心得
2007-05-11 16:50:00
解决使用OpenCV中的imread()内存报错问题
2022-06-06 03:14:21
Python人脸检测实战之疲劳检测
2021-02-23 16:31:37
谷歌浏览器Chrome的javascript引擎
2008-09-04 12:24:00
Python 同级目录(兄弟目录)调用方式
2021-12-07 15:52:12
Django自定义分页效果
2023-12-06 00:09:04
Vue ElementUI在el-table中使用el-popover问题
2024-05-09 15:22:15
利用Python批量导出mysql数据库表结构的操作实例
2024-01-21 00:41:58
javascript读取xml
2024-04-23 09:30:13
mysql数据库删除重复数据只保留一条方法实例
2024-01-28 06:17:49
python实现感知器算法(批处理)
2022-09-06 18:02:25
tkinter动态显示时间的两种实现方法
2021-05-24 23:40:35
Python保姆式手把手带你掌握异常的捕获和处理
2022-04-30 14:10:18
Python 安装setuptools和pip工具操作方法(必看)
2023-11-06 11:46:07
Pandas统计计数value_counts()的使用
2023-11-24 10:28:46