JavaScript-javascript面向对象编程的方式有多少种?怎么写?

JavaScript-javascript面向对象编程的方式有多少种?怎么写?

灵芸 发布于 2017-06-14 字数 0 浏览 1172 回复 3

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

夜无邪 2017-09-22 3 楼

jQuery源码是个很好的例子,不过对初学的话过于复杂。如果有时间,推荐研究一下node.js,有助于加深理解。

面向对象是一种思想,语言的实现是另一回事。javascript并非真正的面向对象,可以说是一种模拟。
首先得理解面向对象的一些术语:类,对象,继承等。
简单的说,在javascript中,function可以作为类,通过类构造一个实例用关键字new。一般这样写,你可以体会一下:

var MyClass = function(_a, _b){ //类,构造时有两个参数
this.a = _a; //私有变量
this.b = _b; //私有变量
}
var MyClass.prototype.show = function(){ //方法
alert('a='+this.a+';b='+this.b);
}
var test = new MyClass('aaa', 'bbb'); //构造一个对象
test.show(); //执行对象的方法

网上介绍javascript的文章也不少,可以搜索一下。关键还是得先理解面向对象,网上多数文章是假设读者了解面向对象的。

面向过程转面向对象,思想问题。
面向过程类似于解数学题,一个公式接一个公式地套。面向对象类似于制造产品,小零件组成模块,模块再继续组装,最终成为产品。

泛泛之交 2017-08-24 2 楼

额。。简单的说,面向对象的方式只有一种,就是面向对象。。

虐人心 2017-07-27 1 楼

你应该想问的是构造的模式和继承的方式吧.
创建对象方式:
1. 工厂模式
2. 构造函数模式
3. 原型模式
4. 组合使用构造函数模式和原型模式
5. 动态原型模式
6. 寄生构造函数模式
7. 稳妥构造函数模式

继承方式:
1. 原型链
2. 借用构造函数
3. 组合继承
4. 原型式继承
5. 寄生式继承
6. 寄生组合式继承

Javascript高级程序设计第二版第六章--面向对象程序设计(Object-Oriented Programming)简称OOP编程--笔记