JavaScript高级 面向对象(5)--最简单的继承方式,混入mix

说明(2017.3.30):

1. 最简单的继承方式,混入mix

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Document</title>
 6 </head>
 7 <body>
 8 <script type="text/javascript">
 9     // 最简单的继承方式,混入mix
10     var o1 = {name:"xxx"};
11     var o2 = {age:"19"};
12     function mix(o1,o2){
13         for(var i in o2){
14             o1[i] = o2[i];
15         }
16     }
17     mix(o1,o2);
18     console.log(o1);
19 </script>
20 </body>
21 </html>
时间: 2024-08-26 11:41:25

JavaScript高级 面向对象(5)--最简单的继承方式,混入mix的相关文章

JavaScript高级 面向对象的程序设计 (二)

二.继承 OO是面向对象语言最为有魅力的概念.一般的OO语言都实现了两种继承,接口继承和实现继承.接口继承只继承方法签名,而实际继承继承了实际的方法. 而在JS中,函数没有签名,所以无法实现接口继承.只能依靠原型链--实现继承. 2.1原型链 JS中描述了原型链的概念,并利用原型链作为实现继承的主要方法. 其基本思想:利用原型链让一个引用类型继承另一个引用类型的属性和方法. functionSuperF(){ this.superPropty ='B'; } SuperF.prototype.g

JavaScript高级 面向对象(1)--添加一个div标签

说明(2017.3.28): 1. JavaScript是一种基于对象的多范式编程语言,不是面向对象,但离开对象不能活. 范式编程是指编程习惯.方式,分为过程式.对象式和函数式编程. 2. 面向对象是指,使用对象进行开发,面向对象是对面向过程的封装. 3. JavaScript面向对象的三个特点,抽象性.继承性和封装性. 抽象性是指,抽取出核心属性和方法,不在特定条件下不能确定对象的具体意义. 继承性是指,把我没有的属性和方法拿来使用,并变成自己的属性和方法. 封装性是指,把方法和属性打包成一个

JavaScript高级 面向对象的程序设计 (一)

创建对象 继承 面向对象的语言都有一个表示---类.通过类我们可以创建多个具有相同属性的对象.但是,在JS中并没有类的概念,所以JS的对象也和其他语言的对象不同. 对象的定义:无序的属性集合,其属性可以包含基本值,对象,函数.(所以我们又可以把JS对象看成散列表,一组键值对.) 一.创建对象 1.1工厂模式 function createPerson(name,age){ var o =newObject(); o.name = name; o.age= age; o.sayName =func

JavaScript高级 面向对象(13)--构造函数的执行过程

说明(2017-4-2 21:50:45) 一.构造函数是干什么用的: 1. 初始化数据的. 2. 在js给对象添加属性用的,初始化属性值用. 二.创建对象的过程: 1. 代码:var p = new Person(); 2. 首先运算符new创建了一个对象,它类似于{},是一个"没有任何成员"的对象. * 使用new创建对象,对象的类型就是创建它的构造函数名(如,Person类型). * 使用{}无论如何都是Object类型,相当于"new Object()".

JavaScript高级 面向对象(12)--引用类型值类型作为参数传递的特性

说明(2017-4-2 18:27:11): 1. 作为函数的参数,就是将函数的数据拷贝一份,传递给函数的定义中的参数. 函数foo()在调用的时候,做了两件事: (1)函数在调用的时候,首先需要将参数中的数据拷贝一份,即数字123拷贝一份. (2)跳转到函数的定义中(函数体),在此之前完成了函数的赋值,即num=123. (3)正式的进入函数内,准备执行函数的每一句话. 1 function foo(num){} 2 var a = 123; 3 foo(a); 2. 值类型作为函数参数传递的

JavaScript高级 面向对象(10)--onload与jq中ready的区别

说明(2017.4.2): 1. 在body中放一个img标签,src链接一张图片,那么页面会先读取html的document文档,然后再读取外部资源(这里没加onload其实就是从上往下顺序读取). 外部资源包括导入的js,css,图片,音乐,视频等等. onload会将所有的资源包括外部资源全部加载完成. 而jquery的ready只要加载完dom树就完成了,里面的图片等资源有没有加载无所谓. 1 <body> 2 <img src="1.jpg"> 3 &

《Javascript高级程序设计》读书笔记之继承

1.原型链继承 让构造函数的原型对象等于另一个类型的实例,利用原型让一个引用类型继承另一个引用类型的属性和方法 function SuperType() { this.property=true; } SuperType.prototype.getSuperValue=function(){ return this.property; }; function SubType() { this.subProperty=false; } //继承SuperType SubType.prototype

JavaScript之面向对象学九(原型式继承和寄生式继承)

一.原型式继承 该继承模式是由道格拉斯*克罗克福德在2006年提出的实现继承的方法. 模式的基本思路:借助原型可以基于已有的对象创建新的对象,同时还不必因此创建自定义类型. 代码如下: function object(o) { function F() { //定义一个F类型的对象 this.name="111"; } F.prototype=o;//使F的原型对象指向传入对象,也就是说F继承了传入的对象,也相当于用传入的对象重写了F的原型对象 相当于如下代码 /* F.prototy

C++面向对象中的三种继承方式

公有继承 基类的public和protected成员的访问属性在派生类中保持不变,但基类的private成员不可直接访问. 派生类中的成员函数可以直接访问基类中的public和protected成员,但不能通过直接访问基类的private成员. 通过派生类的对象只能访问基类的public成员. 私有继承 基类的public和protected成员都以private身份出现在派生类中,但基类的private成员不可直接访问. 派生类中的成员函数可以直接访问基类中的public和protected成