浅谈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中的window.location.search方法简介
Sep 02 Javascript
一个JavaScript去除字符串末尾的空白实例代码
Sep 22 Javascript
jQuery中document与window以及load与ready 区别详解
Dec 29 Javascript
JS实现网页右侧带动画效果的伸缩窗口代码
Oct 29 Javascript
jQuery禁用键盘后退屏蔽F5刷新及禁用右键单击
Jan 22 Javascript
使用Object.defineProperty实现简单的js双向绑定
Apr 15 Javascript
javascript cookie基础应用之记录用户名的方法
Sep 20 Javascript
Bootstrap多级菜单的实现代码
May 23 Javascript
基于对象合并功能的实现示例
Oct 10 Javascript
vuex进阶知识点巩固
May 20 Javascript
详解Node.js一行命令上传本地文件到服务器
Apr 22 Javascript
微信小程序云开发(数据库)详解
May 17 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
回答PHPCHINA上的几个问题:URL映射
2007/02/14 PHP
深入apache host的配置详解
2013/06/09 PHP
学习php过程中的一些注意点的总结
2013/10/25 PHP
php递归实现无限分类的方法
2015/07/28 PHP
php实现购物车产品删除功能(2)
2020/07/23 PHP
PHP+MySQL实现输入页码跳转到指定页面功能示例
2018/06/01 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
2019/10/12 PHP
通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
2011/05/07 Javascript
jquery $.trim()方法使用介绍
2014/05/21 Javascript
jquery中radio checked问题
2015/03/16 Javascript
微信WeixinJSBridge API使用实例
2015/05/25 Javascript
js实现带圆角的多级下拉菜单效果
2015/08/28 Javascript
jquery UI Datepicker时间控件的使用及问题解决
2016/04/28 Javascript
JS模拟的Map类实现方法
2016/06/17 Javascript
jquery.zclip轻量级复制失效问题
2017/01/08 Javascript
javascript常用经典算法详解
2017/01/11 Javascript
Angularjs实现搜索关键字高亮显示效果
2017/01/17 Javascript
JS实现复制内容到剪贴板功能
2017/02/05 Javascript
Vue监听数组变化源码解析
2017/03/09 Javascript
JavaScript常见事件处理程序实例总结
2019/01/05 Javascript
Python3结合Dlib实现人脸识别和剪切
2018/01/24 Python
修复 Django migration 时遇到的问题解决
2018/06/14 Python
Python中使用Counter进行字典创建以及key数量统计的方法
2018/07/06 Python
python找出一个列表中相同元素的多个索引实例
2019/06/11 Python
利用Python绘制有趣的万圣节南瓜怪效果
2019/10/31 Python
python 一维二维插值实例
2020/04/22 Python
Python+Kepler.gl实现时间轮播地图过程解析
2020/07/20 Python
奢华时尚的独特视角:La Garçonne
2018/06/07 全球购物
购房意向书范本
2014/04/01 职场文书
任命书范本大全
2014/06/06 职场文书
财政局党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
三下乡个人总结
2015/03/04 职场文书
小学中队活动总结
2015/05/11 职场文书
Nginx图片服务器配置之后图片访问404的问题解决
2022/03/21 Servers
mysql函数之截取字符串的实现
2022/08/14 MySQL
Python sklearn分类决策树方法详解
2022/09/23 Python