前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型

前言(题外话):

  有人说拖延症是一个绝症,哎呀治不好了。先不说这是一个每个人都多多少少会有的,也不管它究竟对生活有多么大的影响,单单是自己的念想受到了一定得局限,想法不能够像平地而起的高楼大厦建成一样。可是那大楼也是有烂尾的呀,我觉得最重要的还是外在环境与个人观念的先决条件,决定了拖延症的症状的好坏,有那么一些人,它也有拖延症,但是它在拖的中间,想的更多,看的更远。事情在做的时候更加有条不紊,这拖延症这样看来,它也是好的吧。

1.原型:

  javascript中没有提供传统的面向对象语言中的类(class)式继承,而是通过原型委托的方式来实现的对象与对象之间的继承,javascript也没有抽象类和接口,它在实现类或者设计模式的时候,原型模式提供了类似的方法。原型是用于创建对象的一种模式,可以理解为:“一个对象继承了另一个对象的属性和方法,那么就可以说被继承的对象是这个对象的原型”,更具体的说,就是,对象a通过某种方法引用对象b的属性,那么可以就可以说b是a的原型; 栗子:

/*克隆对象*/
function concat(obj){    
if(obj instanceof Object){
if(Object.create!=undefined){   
return Object.create(obj);  //html5规范中新增Object.create()方法
}else{
var F = function(){
}
F.prototype = obj;
return new F();
}
}else{
return -1;
}
}
var A = {              
"name":"zhangtaifeng",
"age":"21"
}
var B = concat(A);
/*************对象B的原型是A*************/
B.job = "qianduankaifa";
alert(B.name);

上面的代码中,对象B通过concat方法克隆了一个对象A() 此时对象A是对象B的原型对象,而最后 B.job = "qianduankaifa"; 则是B对象的默认方法;我们分析控制台打印的结果:

html5规范中新增的Object.create()方法,它将A对象的引用指向了B对象的__proto__属性,__proto__即原型对象在javascript中的表现形式,在firefox控制台中打印可以看到,我们创建的每一个函数都有一个prototype原型属性,而这个对象的用途是包含可以由特定的类型的所有
实例共享的属性和方法 上面这段要理解起来着实不容易,简单的说,javascript中所有的对象都有一个prototype的原型属性,它是用来保存多个对象共享的属性方法的。
来个小例子:我们用来充电的插线板,你把手机通过充电器连接过去,开始充电,那么这个时候,我们如果把手机看成一个对象,这时候可以说插板是手机的充电原型。手机获得了插板的属性----电流;充电器就是他们中间的指针,连接的指针。这时候手机还是可以做其他操作的。
实际上,每个对象默认的原型属性是从Obejct对象克隆继承来的,所以你可以说,对象B的原型是Object;
var A = {
"name":"zhangtaifeng",
"age":"21"
} console.log(A.__proto__===Object.prototype);  //true

这段代码最后返回了true; 说明,javascript所有的对象都默认继承了Object.prototype 所以对象可以调用Object提供的操作方法;


2.构造函数:

   构造函数是一个创建对象的方法,通过new fn()的形式创建,它可以被看作类,但是它并不是类,而是函数构造器,javascript的函数既可以作为普通函数被调用,也可以作构造器被调用。当时用new操作符来调用函数时,这个函数就是一个构造函数,它会默认返回一个新的对象,用new运算符来创建对象的过程,实际上也是克隆Object.prototype对象,再进行一些其他操作的过程。

var Parse = function(){        
this.name = "zhangtaifeng";
} var Parse01 = new Parse();    //到这一步 通过new操作符调用了Parse() 那么此时的Parse就是一个构造函数
alert(Parse01.name)      //zhangtaifeng

构造函数命名首字母需大写,我们打印Parse01查看它的结果:

aaarticlea/png;base64,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" alt="" />

与上面的对象是同样的,它其实是创建了一个对象并赋值给了Parse01。

构造函数中可以直接设置他的原型对象属性:

var Parse = function(){
this.name = "zhangtaifeng";
}
Parse.prototype = {
"age":"21"
}
var Parse01 = new Parse();
alert(Parse01.age)

此时我们再次打印查看结果:

aaarticlea/png;base64,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" alt="" />

我们可以理解为,每个对象都有一个prototype原型属性,而构造函数的作用就是创建一个对象,只是它可以显示的通过Parse.prototype设置prototype的属性 此时Parse的原型是Parse.prototype这个对象。

前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型的更多相关文章

  1. 前端开发:面向对象与javascript中的面向对象实现(一)

    前端开发:面向对象与javascript中的面向对象实现(一) 前言: 人生在世,这找不到对象是万万不行的.咱们生活中,找不到对象要挨骂,代码里也一样.朋友问我说:“嘿,在干嘛呢......”,我:“ ...

  2. 前端开发:javascript中的面向对象

    前端开发:面向对象与javascript中的面向对象实现(一) 面向对象理解: 面向对象是一种对现实世界理解和抽象的方法,是一种先进的程序设计理念,是一种比较抽象的,多形态的设计模式.我们可以这么理解 ...

  3. 简单分析JavaScript中的面向对象

    初学JavaScript的时候有人会认为JavaScript不是一门面向对象的语言,因为JS是没有类的概念的,但是这并不代表JavaScript没有对象的存在,而且JavaScript也提供了其它的方 ...

  4. JavaScript中的面向对象程序设计

    本文内容目录顺序: 1.Object概念讲述: 2.面向对象程序设计特点: 3.JavaScript中类和实例对象的创建: 4.原型概念: 5.原型API: 6.原型对象的具体使用:7.深入理解使用原 ...

  5. 深入理解javascript中实现面向对象编程方法

    介绍Javascript中面向对象编程思想之前,需要对以下几个概念有了解: 1. 浅拷贝和深拷贝:程序在运行过程中使用的变量有在栈上的变量和在堆上的变量,在对象或者变量的赋值操作过程中,大多数情况先是 ...

  6. JavaScript从初见到热恋之深度讨论JavaScript中的面向对象。

    JavaScript中的面向对象.面向对象的三个基本特征:封装.继承.多态. 1.封装 js的封装如下 定义Person类 function Person(name,age,sex) { this.n ...

  7. 如何理解并学习javascript中的面向对象(OOP) [转]

    如果你想让你的javascript代码变得更加优美,性能更加卓越.或者,你想像jQuery的作者一样,写出属于自己优秀的类库(哪怕是基于 jquery的插件).那么,你请务必要学习javascript ...

  8. 【转载】【游戏开发】在Lua中实现面向对象特性——模拟类、继承、多态

    [游戏开发]在Lua中实现面向对象特性——模拟类.继承.多态   阅读目录 一.简介 二.前提知识 三.Lua中实现类.继承.多态 四.总结 回到顶部 一.简介 Lua是一门非常强大.非常灵活的脚本语 ...

  9. 前端学习 第二弹: JavaScript中的一些函数与对象(1)

    前端学习 第二弹: JavaScript中的一些函数与对象(1) 1.apply与call函数 每个函数都包含两个非继承而来的方法:apply()和call(). 他们的用途相同,都是在特定的作用域中 ...

随机推荐

  1. boost强分类器的实现

    boost.cpp文件下: bool CvCascadeBoost::train( const CvFeatureEvaluator* _featureEvaluator, int _numSampl ...

  2. 【.net 深呼吸】限制执行代码的权限

    前面好几篇文章,老周都跟大伙伴们聊了跟应用程序域有关的话题,干脆咱们一聊到底吧,做学问就应该这样,有恒心. App Domain的创建新应用程序域的方法中,有一个特殊的重载: public stati ...

  3. Android业务组件化之子模块SubModule的拆分以及它们之间的路由Router实现

    前言: 前面分析了APP的现状以及业务组件化的一些探讨(Android业务组件化之现状分析与探讨),以及通信的桥梁Scheme的使用(Android业务组件化之URL Scheme使用),今天重点来聊 ...

  4. Mysql命令大全

    格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输 ...

  5. Oracle手边常用70则脚本知识汇总

    Oracle手边常用70则脚本知识汇总 作者:白宁超 时间:2016年3月4日13:58:36 摘要: 日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规 ...

  6. C#创建、安装、卸载、调试Windows Service(Windows 服务)的简单教程

    前言:Microsoft Windows 服务能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序.这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面.这 ...

  7. MySQL Workbench建表时 PK NN UQ BIN UN ZF AI 的含义

    [转自网络]https://my.oschina.net/cers/blog/292191 PK Belongs to primary key 作为主键 NN Not Null 非空 UQ Uniqu ...

  8. Dancing Links and Exact Cover

    1. Exact Cover Problem DLX是用来解决精确覆盖问题行之有效的算法. 在讲解DLX之前,我们先了解一下什么是精确覆盖问题(Exact Cover Problem)? 1.1 Po ...

  9. python selenium

    https://segmentfault.com/a/1190000007249396?_ea=1293878

  10. 【腾讯优测干货分享】如何降低App的待机内存(三)——探索内存增长的原因

    本文来自于腾讯优测公众号(wxutest),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/8BiKIt3frq9Yv9KV5FXlGw 1.3新问题的进一步挖 ...