开发者社区> grootzhang> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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

简介: 前端开发:面向对象与javascript中的面向对象实现(一) 前言:       人生在世,这找不到对象是万万不行的。咱们生活中,找不到对象要挨骂,代码里也一样。朋友问我说:“嘿,在干嘛呢......”,我:“找不到对象!”,他:“就你那样也能找得到对象?”。
+关注继续查看

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

前言:

      人生在世,这找不到对象是万万不行的。咱们生活中,找不到对象要挨骂,代码里也一样。朋友问我说:“嘿,在干嘛呢......”,我:“找不到对象!”,他:“就你那样也能找得到对象?”。我一脸黑线......

      废话不多说,今天博主要跟大家聊的是《面向对象与javascript中的面向对象实现》”。

 

面向对象理解:

  面向对象是一种对现实世界理解和抽象的方法,是一种先进的程序设计理念,是一种比较抽象的,多形态的设计模式。我们可以这么理解:“万物皆对象”,我面向了它,即“面向对象”。例如,面前有一台电视机,深入剖析,这个电视机具有哪些特性?

     ①  它是开着的或者是关着的;

     ②  它有几个按钮,包括(开关键、音量键、上一个节目、下一个节目);

     ③  有一个机顶盒用来接收数据

  类的概念

  现在,我们把电视看成一个对象,它的抽象化就是,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象,也就是说,类==对象==实例

  类的方法

    类有很多个方法,现在我们可以把电视机看成一个类,它现在有哪些方法呢? 开关、音量、节目;这是它的方法,就是类的方法;我们不需要去关心按下开关电视经历了什么样的开机过程,我们只需要知道,我按下了开关,它就会开启。

  私有与公共

  可以被用户访问到的方法叫做公共方法,而那些只可以被类访问的方法叫做私有方法,没错,就是数据,电视机在接收电视台的信息的时候,我们是不能控制的,它在内部调用了一个方法。哦~我们按下了开关这个方法,然后开关这个方法调用了一个私有的接收信息方法,然后电视就被另一个私有方法(显示在屏幕上)显示出来了。

  继承

  现在,我觉得我的电视机屏幕显示效果太烂,行,换个新的。在换上的时候,我们可以说,哦~现在电视机又多了一个显示器,拥有了这个显示器的所有控制按钮与控制接口(开关,音量等等),那我们就可以认为,电视机继承了这一个新的显示器,它继承了这个显示器的方法,它现在就可以调用这个显示器的显示方法,把电视显示在新的显示器上面。

  一张详解图:

 

javascript中面向对象实现(1):

  在javascript中实现面向对象没有其他oo语言那样简便,因为它并没有直接规定class标识等等,要实现它有很多种方法,博主暂且举一个最常见的栗子,其它的篇幅过长,我们在下一章一一详解:

//创建自定义数据格式
        
        function DianZan(){
            //构造函数
        }
        DianZan.prototype = {
            //给类添加方法
                dianzan:function(){
                    alert("给博主点一个赞");
                },
                budianzan:function(){
                    alert("狠心拒绝");
                }
            }
        
        var dianzan = new DianZan();   //创建了一个实例(类)
        
        dianzan.dianzan(); //调用方法点赞

首先,我们创建了一个构造函数,然后给构造函数的原型添加了两个方法,最后,创建一个dianzan示例(类),然后调用点赞方法;  结合上面的逻辑,你看懂了吗?

 

总结:

  下一章我们继续深入理解javascript中的面向对象,它远没有想象中的那么复杂。弄清楚里面的原理,我想对大家来说都是一件非常有意义的事情。

 

---------------------------------------时间不曾停下它的脚步,你又怎么可以止步不前---------------------------------------

 

  我的微信号:    qq:

 欢迎各种技术讨论,如果您有建站需求,欢迎联系;

 (转载请注明出处)

 

======================================================== 转载请注明出处。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《JavaScript面向对象编程指南(第2版)》——1.4 展望未来
对于未来的情况,我们这里只能做一些猜测。但几乎可以肯定地说,JavaScript语言必将会有它的一席之地。毕竟,在过去相当长的一段时间里,JavaScript在被严重低估、始终未得到充分利用(或者被错误地滥用了)的情况下,依然几乎每天都能有很多新的、有趣的JavaScript应用被开发出来。
1205 0
《JavaScript面向对象编程指南(第2版)》——1.9 本章小结
然后,对面向对象程序设计的概念进行了一些基本论述。接着,我们向您详细阐述了为什么JavaScript不是传统的基于类的面向对象语言,而是一套独特的原型系统。现在,您已经为下一步深入学习JavaScript语言、掌握其面向对象特性打下了一定的基础,但让我们一步步来。
1332 0
《JavaScript面向对象编程指南(第2版)》——第1章 面向对象的JavaScript 1.1 回顾历史
自Web诞生以来,人们对于动态与响应式页面的需求便与日俱增。虽然静态的HTML文本页面在可读性方面或许会更好一些,特别是在有了CSS的辅助之后,页面排版显得更加美观了,但从另一方面来说,如果我们能让人们像在桌面上那样使用浏览器中的应用程序,事情或许会变得更有趣一些。
1747 0
《JavaScript面向对象编程指南(第2版)》——1.7 OOP小结
本节书摘来自异步社区《JavaScript面向对象编程指南(第2版)》一书中的第1章,第1.7节,作者:【加拿大】Stoyan Stefanov著,更多章节内容可以访问云栖社区“异步社区”公众号查看
1394 0
+关注
grootzhang
我是张泰峰,从事开发工作,目前在一家跨境电商担任高级开发工程师
37
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载