博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何理解并学习javascript中的面向对象(OOP) [转]
阅读量:7042 次
发布时间:2019-06-28

本文共 1797 字,大约阅读时间需要 5 分钟。

如果你想让你的javascript代码变得更加优美,性能更加卓越。或者,你想像jQuery的作者一样,写出属于自己优秀的类库(哪怕是基于 jquery的插件)。那么,你请务必要学习javascript面向对象,否则你无法更灵活的使用javascript这门语言。

什么事闭包?到底什么是原型?(知道闭包和原型的,就算得上是javascript的高手了。但真正能够理解,并且灵活运用的人并不多)到底该如何学习javascript中的面向对象呢?在javascript这么语言正如日中天,相信不少人正在为此而困惑。

本文中,我讲用代码+详细注释的方式,一行行一步步讲述javascript中的面向对象编程。当然有些只是我个人的理解,不足之处,敬请谅解!

1.下面部分的代码,将是从目前十分流行的JSON数据格式以及javascript数组,来一步步像大家阐述javascript中的面向对象思想。

1   2   3   4     JSON数据格式  5       6      149 150 151 152 153 
View Code

2.下面部分代码,是从另外一个角度讲解javascript中的面向对象编程。是借鉴EasyJF开源团队的讲解,我个人做了一些补充和说明。

1   2   3   4     javascript面向对象编程  5       6     192 193 194 
195 196
View Code

3. function,object

1         function aa() { 2  3         } 4         var bb = function () { 5  6         }; 7         var cc = new Function("a", "return a"); 8         var obj1 = new Object(); 9         var obj2 = new Array();10         var obj3 = {};11         var a = new aa();
View Code
1 function Person(name , age) { 2             this.name = name; 3             this.age = age; 4             this.show = function () { 5                 window.alert(this.name); 6             } 7             this.say = say; 8         } 9         function say() {10             window.alert(this.name);11         }12         Person.prototype.output = function () {13             window.alert(this.name);14         };15         var person1 = new Person("wyp",33);16         var person2 = new Person("wyp", 33);17         person1.say();18         person1.show();19         person1.output();20         window.alert(person1 instanceof Person);21         window.alert(person1.show == person2.show);22         window.alert(person1.say == person2.say);23         window.alert(person1.output == person2.output);
View Code

http://blog.csdn.net/dinglang_2009/article/details/6911622

你可能感兴趣的文章
网站安全-浅谈用户密码暴力破解
查看>>
论人性中的野性
查看>>
PyTorch 实战-用 Numpy 热身
查看>>
TensorFlow 多 GPU 处理并行数据
查看>>
整理一些计算机基础知识!
查看>>
史上最快! 10小时大数据入门(二)-初识Hadoop
查看>>
HyperLedger Fabric 1.2 官方End-2-End运行(8)
查看>>
告知服务器意图的 HTTP 方法
查看>>
Java编程思想-Chapter15-泛型
查看>>
js浮点数存储精度丢失原理
查看>>
友达光电(昆山)第六代LTPS液晶面板厂 成功点亮首片5.5吋Full HD面板 缔造最快速量产记录 展现领先LTPS技术实力...
查看>>
Chrome 暗黑模式最新进展:现在可自动跟随系统主题设置
查看>>
Event Loop是个什么玩意:从 Vue 的 nextTick 说起
查看>>
前PS VR伦敦团队另立门户,创立新的VR工作室
查看>>
jSearch(聚搜) v0.5.0 发布,多项更新和体验优化
查看>>
日志收集(ElasticSearch)串联查询 MDC
查看>>
5.For loops
查看>>
抛砖引玉之~sftp
查看>>
linux mysql 操作命令
查看>>
[20180126]内核参数tcp_keepalive.txt
查看>>