浅谈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 相关文章推荐
js 父窗口控制子窗口的行为-打开,关闭,重定位,回复
Apr 20 Javascript
jQuery LigerUI 使用教程入门篇
Jan 18 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
Apr 22 Javascript
JavaScript数据类型检测代码分享
Jan 26 Javascript
JS+CSS实现的经典tab选项卡效果代码
Sep 16 Javascript
jQuery事件绑定方法学习总结(推荐)
Nov 21 Javascript
javascript中神奇的 Date对象小结
Oct 12 Javascript
Bootstrap popover 实现鼠标移入移除显示隐藏功能方法
Jan 24 Javascript
微信小程序表单弹窗实例
Jul 19 Javascript
Vue.js子组件向父组件通信的方法实例代码详解
Dec 10 Javascript
vue+Vue Router多级侧导航切换路由(页面)的实现代码
Dec 20 Javascript
layui监听单元格编辑前后交互的例子
Sep 16 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
利用curl 多线程 模拟 并发的详解
2013/06/14 PHP
PHP变量内存分配问题记录整理
2013/11/27 PHP
PHP中Memcache操作类及用法实例
2014/12/12 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
(转载)JavaScript中匿名函数,函数直接量和闭包
2007/05/08 Javascript
jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)
2010/05/24 Javascript
NodeJs中的非阻塞方法介绍
2012/06/05 NodeJs
单击按钮显示隐藏子菜单经典案例
2013/01/04 Javascript
JavaScript对象和字串之间的转换实例探讨
2013/04/21 Javascript
JavaScript中setInterval的用法总结
2013/11/20 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
JavaScript位移运算符(无符号) >>> 三个大于号 的使用方法详解
2016/03/31 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
javascript计算渐变颜色的实例
2017/09/22 Javascript
vue-cli构建项目下使用微信分享功能
2018/05/28 Javascript
详解react native页面间传递数据的几种方式
2018/11/07 Javascript
react 组件传值的三种方法
2019/06/03 Javascript
layui数据表格 table.render 报错的解决方法
2019/09/29 Javascript
js实现带搜索功能的下拉框
2020/01/11 Javascript
手把手教您实现react异步加载高阶组件
2020/04/07 Javascript
[11:27]《一刀刀一天》之DOTA全时刻20:TI4总奖金突破920W TS赛事分析
2014/06/18 DOTA
[43:47]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第一场 12.09
2020/12/11 DOTA
python之import机制详解
2014/07/03 Python
Scrapy的简单使用教程
2017/10/24 Python
浅谈Python中重载isinstance继承关系的问题
2018/05/04 Python
Django使用redis缓存服务器的实现代码示例
2019/04/28 Python
Python Tkinter 简单登录界面的实现
2019/06/14 Python
Python 合并拼接字符串的方法
2020/07/28 Python
python 多进程和协程配合使用写入数据
2020/10/30 Python
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
《找不到快乐的波斯猫》教学反思
2014/02/24 职场文书
企业优秀团员事迹材料
2014/08/20 职场文书
迎新生欢迎词
2015/01/23 职场文书
《我是什么》教学反思
2016/02/16 职场文书
Python 使用 Frame tkraise() 方法在 Tkinter 应用程序中的Frame之间切换
2022/04/24 Python