javaScript中支持多繼承,通過this關鍵字實現多繼承. 下面這個例子是來判斷父母結合后,隨機產生子女
//下面探討的問題是 父母結合后子女的性別
function father(){
this.DNA1 = 'X';
this.DNA2 = 'Y';
//存儲father中所有的染色體的數組
this.arrayF = [this.DNA1,this.DNA2];
this.sex = function(){
this.DNA = this.DNA1+" " +this.DNA2;
//console.log('this is a man');
}
}
function mother(){
this.DNA1 = 'X';
this.DNA2 = 'X';
//存儲mother中所有的染色體的數組
this.arrayM = [this.DNA1,this.DNA2];
this.sex = function(){
this.DNA= this.DNA1+" " +this.DNA2;
//console.log('this is a woman');
}
}
//定義全局變量,統計出現的次數,
var count = 0;
var count1 = 0;
var count2 = 0;
function children(){
this.mother = mother;
this.father = father;
//從father中隨機取出一條染色體
this.DNA1 = this.arrayF[Math.floor(Math.random()*(this.arrayF.length)+1)-1];
//從mother中隨機取出一條染色體
this.DNA2 = this.arrayM[Math.floor(Math.random()*(this.arrayM.length)+1)-1];
//如果是男孩
if(this.DNA1 !== this.DNA2){
count1++;
this.sex="The baby is a boy"
}else{
count2++;
this.sex="The baby is a girl"
}
count++;
console.log(this.sex);
};
//測試函數
function test(label){
for(var i=0;i<label;i++){
children();
console.log('男孩出現的次數為: '+count1+"\n"+'女孩出現的次數為: '+count2+"\n"+"總次數為: "+count);
}
}
//test(10);
分享到:
相关推荐
此外,JavaScript的灵活性允许开发者选择基于类的继承方式,或者利用原型继承的微妙之处,实现更高效的设计。 4.1 为什么需要继承 继承的主要目的是代码复用和降低耦合度。通过继承,可以在已有类的基础上扩展功能...
在这个主题中,“javascript控件开发之继承关系”主要探讨的是如何利用JavaScript的面向对象特性来构建和组织控件的层次结构,以及如何通过继承来实现代码的复用和模块化。 在JavaScript中,继承是基于原型...
继承是面向对象的核心特性之一,它允许一个对象(子类)获取另一个对象(父类)的属性和方法。本篇文章将深入探讨JavaScript实现继承的七种常见方式,帮助你更好地理解和运用这一概念。 1. 原型链继承(Prototype ...
JavaScript 继承之为什么要继承 JavaScript 中的继承机制是指子类继承父类的属性和方法,使得子类可以拥有父类的所有特征。继承是面向对象编程的基本机制之一,它可以实现代码复用、提高编程效率和增强代码的可维护...
在JavaScript中实现多继承可以通过多次调用`call`方法来完成,如下所示: ```javascript function Class10() { this.showSub = function(a, b) { alert(a - b); }; } function Class11() { this.showAdd = ...
javascript 五种继承简介。
1. **JavaScript继承** - **原理**:JavaScript的继承主要是通过原型链(prototype chain)来实现的。每个JavaScript对象都有一个内部属性[[Prototype]],通常可以通过`__proto__`访问,或通过`Object....
继承是面向对象的核心特性之一,它允许一个对象(子类)从另一个对象(父类)获取属性和方法,从而形成类之间的层次结构。本篇文章将深入探讨JavaScript中实现继承的几种常见方式。 1. 原型链继承 JavaScript的原型...
JavaScript的原型继承是其面向对象编程的一大特性,它基于原型链机制实现,允许一个对象可以从另一个对象继承属性和方法。这种继承方式不同于类继承,而是通过将子类的原型对象设置为父类的一个实例来实现。 在...
5. **寄生组合继承**:结合寄生继承和组合继承,避免了冗余的构造函数调用,通常被认为是JavaScript中实现继承的最佳实践。 6. **ES6的类继承**:ES6引入了`class`语法糖,使得JavaScript的继承看起来更像传统的...
JavaScript还支持多继承,这可以通过操作对象的`prototype`属性来实现。尽管多继承可能导致命名冲突和复杂性增加,但通过瑞士继承(Swiss Inheritance)等策略,可以更有序地组合多个对象的功能。例如,`ZParenizor`...
在JavaScript中,对象继承是实现面向对象编程(OOP)的关键特性之一。对象继承允许一个对象(子对象)从另一个对象(父对象或基对象)那里获取属性和方法,从而实现代码的复用和组织。`zInherit`是JavaScript中一种...
在JavaScript中,继承是面向对象编程的一个核心概念,它允许我们创建基于现有对象的新对象,同时还能继承其属性和方法。本篇将深入探讨一种实现继承的工具函数方法,主要聚焦于`source.js`文件中可能包含的内容。...
JavaScript中的继承是面向对象编程的重要概念,它允许一个对象(子对象)获取另一个对象(父对象)的属性和方法,从而实现代码复用和多态性。JavaScript支持多种继承实现方式,包括以下四种: 1. **构造函数继承**...
JavaScript继承机制研究 在本文中,我们将深入探讨JavaScript继承机制的实现方式,并对基于原型的继承、构造函数方式继承、组合继承、寄生式继承等继承机制进行了总结归纳和分析。 基于原型的继承 JavaScript是...
在JavaScript的世界里,原型继承不仅是实现对象功能共享的核心机制,也是其面向对象编程风格的基础。本文将深入探讨JavaScript原型继承的工作原理、实现方式以及在现代Web开发中的应用。 JavaScript的原型继承是一种...
本文将详细介绍六种实现JavaScript继承的方法。 1. 原型链继承 原型链继承是通过改变子类型的原型对象来实现继承的。子类型构造函数的原型被替换为超类型构造函数的一个实例,这样子类型就可以继承超类型的所有属性...
本文将深入探讨JavaScript继承的实现方式,以及其中的问题和解决方案。 首先,我们来看混合方式的实现,这种方式结合了原型链和对象冒充。在JavaScript中,构造函数是用于创建特定类型对象的函数。例如,`Employee`...