今天看到js的对象有两种:一种是普通的对象,例如 var obj = {},另外一种是函数对象,例如 var objFunc = function(){};
js的对象不存在继承的关系,但是可以借助prototype原型获取继承属性,例如:
<script>
var o = {}; // 我发现了一个东西。
o.eat = function(){return "I am eating."}
o.sleep = function(){return "ZZZzzz..."}
o.talk = function(){return "Hi!"}
o.think = function(){return "Hmmm..."}
var Human = new Function();
Human.prototype = o;
alert(Human.prototype.talk()); // human的属性没有talk,在扩展属性里有talk
var h = new Human();
alert(h.talk()) //human的所有属性加上prototype的属性一起被h继承了
var objFuncA = function(){
alert("A");
}
objFuncA.name = "wangli";
var objFuncB = new Function(); //定义一个函数对象
objFuncB.prototype = new objFuncA(); //alert(A);说明继承了objFuncA对象
alert(objFuncB.prototype.name);
</script>
相关推荐
`zInherit`是JavaScript中一种常见的对象继承实现方式。 在JavaScript中,有多种实现继承的方法,包括原型链继承、构造函数继承、组合继承、寄生继承、原型式继承、共享原型等。`zInherit`是其中的一种自定义实现,...
在JavaScript中,面向对象编程是通过构造函数、原型链和继承实现的。继承是面向对象编程的核心概念之一,它允许我们创建一个新对象,该对象继承现有对象的属性和方法。在JavaScript中,实现继承有多种方式,每种方式...
浅析JavaScript实现基于原型对象的“继承” 本文旨在对JavaScript实现基于原型对象的“继承”进行深入分析,并与基于类的继承进行比较。通过对JavaScript的原型继承机制的介绍和实例分析,提出一个改进的“寄生组合...
每个JavaScript对象都有一个内部的[[Prototype]]属性,通常可以通过`__proto__`或`Object.getPrototypeOf`访问。当试图访问对象的一个属性时,如果该属性不存在于当前对象,JavaScript会向上搜索原型链,直到找到该...
在JavaScript中,遍历属性、理解`prototype`和掌握...总结,遍历JavaScript对象的属性有多种方法,而`prototype`和继承机制是实现面向对象编程的关键。理解并熟练运用这些概念,将有助于编写更高效、更可维护的代码。
通过设置一个对象的`__proto__`属性为另一个对象,可以实现继承。 2. 构造函数继承(Constructor Inheritance) 构造函数继承主要通过`call()`或`apply()`方法实现,将父类构造函数的上下文(`this`关键字)指向...
### JavaScript继承实现示例 #### 知识点概述 在JavaScript中,继承是一种常见的对象间关系,它允许一个对象(子类)继承另一个对象(父类或超类)的属性和方法。通过继承,可以复用代码、提高程序的可维护性,并...
JavaScript的核心概念之一就是对象,而对象的创建和继承是理解JavaScript的关键。 首先,JavaScript的对象并非基于类,而是基于原型。这意味着,JavaScript的对象并不是由预定义的模板或类创建的,而是通过字面量...
在JavaScript中,子类可以继承父类的属性和方法,这通过`extends`关键字实现。子类可以覆盖或扩展父类的方法,也可以通过`super`关键字访问父类的构造函数。 ```javascript class Student extends Person { ...
这种方法是JavaScript最基础的继承方式,通过`prototype`属性实现。在提供的代码示例中,首先定义了一个`Pet`对象,它有一个构造函数接收`name`和`legs`作为参数。然后,`Pet.prototype`上定义了一个`getDetails`...
JavaScript 的 9 种继承实现方式归纳 JavaScript 中的继承方式是基于原型的,与基于类的编程语言,如 C++ 和 Java,截然不同。JavaScript 的灵活性使得其实现继承的方式非常多样化。本文将介绍 JavaScript 中的 9 ...
在JavaScript中,可以使用`JSON.stringify()`将对象转换为JSON字符串,`JSON.parse()`将JSON字符串解析回JavaScript对象。 ### 其他知识点 - `this`关键字:在函数中,`this`指代调用该函数的对象。在全局作用域或...
在JavaScript中,面向对象编程是实现复杂功能和代码复用的关键。继承是面向对象的核心特性之一,它允许一个对象(子类)从另一个对象(父类)获取属性和方法,从而形成类之间的层次结构。本篇文章将深入探讨...
JavaScript对象允许动态添加、修改和删除属性,无需预先声明。 五、原型与继承 在JS中,每个对象都有一个隐式原型属性 `__proto__`,指向创建它的构造函数的原型。这使得对象可以继承其他对象的属性和方法。通过 `...
本文将深入探讨 JavaScript 中的继承实现方式,并结合提供的 "zinherit.js" 文件来解析相关知识点。 在 JavaScript 中,继承主要通过原型链(prototype chain)、构造函数继承、组合继承、原型式继承、寄生式继承、...
2. `prototype`:函数对象的 `prototype` 属性用于创建实例对象的原型,实现继承。 3. `Object.create()`: 用于创建一个新对象,并将新对象的原型设置为指定的对象。 4. `instanceof` 运算符:判断对象是否是某个...
- `Undefined`类型只有一个值`undefined`,表示未定义的值,例如未初始化的变量或对象属性。 - `null`和`undefined`相等`null == undefined`,但不全等`null !== undefined`。 - 使用`typeof`操作符时,`null`...
在JavaScript中创建对象和实现继承是开发过程中非常重要的知识点。本文将探讨JavaScript中对象的创建方式以及六种常见的继承模式,包括原型链继承、借用构造函数继承、组合继承、原型式继承、寄生式继承以及寄生组合...
3. **对象属性**:通过将数据存储在对象的属性中,可以控制数据的访问和修改。使用getter和setter方法可以实现对属性的读取和设置的控制。 例如: ```javascript function Person(name) { var _name = name; // ...
本文将深入探讨JavaScript中的继承实现方式以及公有、私有和静态方法的概念。 首先,我们要理解JavaScript中的对象和原型。JavaScript使用原型(prototype)机制来实现继承,这意味着一个对象可以访问其原型对象的...