浅谈javascript构造函数与实例化对象


Posted in Javascript onJune 22, 2015

前言--讲在前面

我想有很多以前很少接触后台编程语言的初学者朋友跟我一样,对javascript里面一系列的“名词”搞的一头雾水。好像大概知道讲的是什么,但其实理解的还是不清楚;我想,学习任何一种知识,首当其冲应该把最基本的名词解释搞清楚(知道它讲的到底是什么,有助于我们更好的理解它。)即知其然知其所以然,这样对以后的进阶学习是很有帮助的。下面的简单讲一下我自己对这样一些看似不重要但又不得不清楚的知识点的理解。(若有出入,欢迎指正)

1.什么是构造函数

构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。

这是百度百科的解释,解释的很书本化但意思表达的还是很清楚的。下面请看小例子:

var request = new XMLHttpRequest();

这句表达式是我们在使用AJAX技术时创建request对象时经常用到的。那么我们可以清楚的看到 “new XMLHttpRequest();” 这句话就是一个标准的构造函数!我们 “var” 声明了一个 “request” 对象,用构造函数 “new XMLHttpRequest();” 来初始化这个 “request” 对象为它赋初始值。所以我们可以知道:“与 ‘new' 运算符一起使用用来创建对象并初始化对象的‘函数'就是构造函数”。

比如我们常见的声明数组就是标准的构造函数:var array = new Array();

2.什么是实例化对象

var request = new XMLHttpRequest();

在面向对象的编程中,通常把用类创建对象的过程称为实例化。

上面我用红色和蓝色将解释的重点标了出来。说白了,实例化对象就是创建对象的过程!

那么什么是“类”呢?根据字面理解我们可以理解为“类型”。比如“蛋糕”,它是一个甜品的分类,也就是一个类型;那么起司蛋糕则是甜品中蛋糕这个分类的具体的个体,也就是对象。

我们知道在程序语言中,“类”是抽象的,我们没有办法来操作它或使用它的方法和属性,只有把这个类实例化成为一个对象,我们才可以去调用它的一系列方法和属性。其实这个也很好理解,在生活中抽象的东西我们没有办法看到它或者捕捉到它,那么自然我们也没有办法去使用它的一些功能,只有将抽象的东西具体到一个个,个体或实际的对象,我们才能清楚的理解或者认识它;编程亦是如此。因此,实例化对象就是由抽象到具体的过程,这个过程就叫实例化。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
用JavaScript脚本实现Web页面信息交互
Oct 11 Javascript
Javascript 继承实现例子
Aug 12 Javascript
js Event对象的5种坐标
Sep 12 Javascript
javascript中实现兼容JAVA的hashCode算法代码分享
Aug 11 Javascript
浅谈JQuery+ajax+jsonp 跨域访问
Jun 25 Javascript
BootStrap 轮播插件(carousel)支持左右手势滑动的方法(三种)
Jul 07 Javascript
angularjs 实现带查找筛选功能的select下拉框实例
Jan 11 Javascript
jQuery插件FusionCharts实现的2D饼状图效果【附demo源码下载】
Mar 03 Javascript
layer实现登录弹框,登录成功后关闭弹框并调用父窗口的例子
Sep 11 Javascript
微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)
Mar 10 Javascript
jQuery使用ajax传递json对象到服务端及contentType的用法示例
Mar 12 jQuery
JavaScript实现跟随鼠标移动的盒子
Jan 28 Javascript
jquery分析文本里url或邮件地址为真实链接的方法
Jun 20 #Javascript
jQuery实现文本框输入同步的方法
Jun 20 #Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
Jun 19 #Javascript
jquery实现的代替传统checkbox样式插件
Jun 19 #Javascript
JQuery实现的图文自动轮播效果插件
Jun 19 #Javascript
移除AngularJS下URL中的#字符的方法
Jun 19 #Javascript
使用AngularJS创建单页应用的编程指引
Jun 19 #Javascript
You might like
有关phpmailer的详细介绍及使用方法
2013/01/28 PHP
PHP静态调用非静态方法的应用分析
2013/05/02 PHP
TextArea 控件的最大长度问题(js json)
2009/12/16 Javascript
基于JQuery的密码强度验证代码
2010/03/01 Javascript
JSQL 批量图片切换的实现代码
2010/05/05 Javascript
js中有关IE版本检测
2012/01/04 Javascript
有关于eclipse配置spket需要注意的一些地方
2013/04/07 Javascript
详解AngularJS中的依赖注入机制
2015/06/17 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
ES6学习笔记之map、set与数组、对象的对比
2018/03/01 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
解决Vue2.0 watch对象属性变化监听不到的问题
2018/09/11 Javascript
如何在面试中手写出javascript节流和防抖函数
2020/10/22 Javascript
react-native 实现购物车滑动删除效果的示例代码
2021/01/15 Javascript
[00:36]TI7不朽珍藏III——斯温不朽展示
2017/07/15 DOTA
[01:03:13]VG vs Pain 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
详解Python中open()函数指定文件打开方式的用法
2016/06/04 Python
Django验证码的生成与使用示例
2017/05/20 Python
django+mysql的使用示例
2018/11/23 Python
Python实现批量修改图片格式和大小的方法【opencv库与PIL库】
2018/12/03 Python
Python 运行.py文件和交互式运行代码的区别详解
2019/07/02 Python
Python如何使用BeautifulSoup爬取网页信息
2019/11/26 Python
python烟花效果的代码实例
2020/02/25 Python
解决使用python print打印函数返回值多一个None的问题
2020/04/09 Python
python爬虫实现POST request payload形式的请求
2020/04/30 Python
StubHub澳大利亚:购买或出售您的门票
2019/08/01 全球购物
一道写SQL的面试题和答案
2013/11/19 面试题
什么是Linux虚拟文件系统VFS
2012/01/31 面试题
制药工程专业个人求职自荐信
2014/01/25 职场文书
入党积极分子自我鉴定范文
2014/03/25 职场文书
中秋手机店促销方案
2014/06/16 职场文书
孕妇离婚协议书范本
2014/11/20 职场文书
2015年护士节活动策划方案
2015/05/04 职场文书
谁动了我的奶酪读书笔记
2015/06/30 职场文书
服务器间如何实现文件共享
2022/05/20 Servers
基于Python实现nc批量转tif格式
2022/08/14 Python