`

javaSctipt之多繼承

阅读更多

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继承

    此外,JavaScript的灵活性允许开发者选择基于类的继承方式,或者利用原型继承的微妙之处,实现更高效的设计。 4.1 为什么需要继承 继承的主要目的是代码复用和降低耦合度。通过继承,可以在已有类的基础上扩展功能...

    javascript控件开发之继承关系

    在这个主题中,“javascript控件开发之继承关系”主要探讨的是如何利用JavaScript的面向对象特性来构建和组织控件的层次结构,以及如何通过继承来实现代码的复用和模块化。 在JavaScript中,继承是基于原型...

    JavaScript学习之三 — JavaScript实现继承的7种方式

    继承是面向对象的核心特性之一,它允许一个对象(子类)获取另一个对象(父类)的属性和方法。本篇文章将深入探讨JavaScript实现继承的七种常见方式,帮助你更好地理解和运用这一概念。 1. 原型链继承(Prototype ...

    javascript继承之为什么要继承.docx

    JavaScript 继承之为什么要继承 JavaScript 中的继承机制是指子类继承父类的属性和方法,使得子类可以拥有父类的所有特征。继承是面向对象编程的基本机制之一,它可以实现代码复用、提高编程效率和增强代码的可维护...

    JavaScript中的继承之类继承_.docx

    在JavaScript中实现多继承可以通过多次调用`call`方法来完成,如下所示: ```javascript function Class10() { this.showSub = function(a, b) { alert(a - b); }; } function Class11() { this.showAdd = ...

    javascript 五种继承

    javascript 五种继承简介。

    JavaScript继承与多继承实例分析.docx

    1. **JavaScript继承** - **原理**:JavaScript的继承主要是通过原型链(prototype chain)来实现的。每个JavaScript对象都有一个内部属性[[Prototype]],通常可以通过`__proto__`访问,或通过`Object....

    JavaScript实现继承的几种方式

    继承是面向对象的核心特性之一,它允许一个对象(子类)从另一个对象(父类)获取属性和方法,从而形成类之间的层次结构。本篇文章将深入探讨JavaScript中实现继承的几种常见方式。 1. 原型链继承 JavaScript的原型...

    javascript的prototype继承

    JavaScript的原型继承是其面向对象编程的一大特性,它基于原型链机制实现,允许一个对象可以从另一个对象继承属性和方法。这种继承方式不同于类继承,而是通过将子类的原型对象设置为父类的一个实例来实现。 在...

    JavaScript面向对象继承详解

    5. **寄生组合继承**:结合寄生继承和组合继承,避免了冗余的构造函数调用,通常被认为是JavaScript中实现继承的最佳实践。 6. **ES6的类继承**:ES6引入了`class`语法糖,使得JavaScript的继承看起来更像传统的...

    JavaScript中的类继承

    JavaScript还支持多继承,这可以通过操作对象的`prototype`属性来实现。尽管多继承可能导致命名冲突和复杂性增加,但通过瑞士继承(Swiss Inheritance)等策略,可以更有序地组合多个对象的功能。例如,`ZParenizor`...

    js javascript zInherit 对象 继承

    在JavaScript中,对象继承是实现面向对象编程(OOP)的关键特性之一。对象继承允许一个对象(子对象)从另一个对象(父对象或基对象)那里获取属性和方法,从而实现代码的复用和组织。`zInherit`是JavaScript中一种...

    javascript继承之工具函数二

    在JavaScript中,继承是面向对象编程的一个核心概念,它允许我们创建基于现有对象的新对象,同时还能继承其属性和方法。本篇将深入探讨一种实现继承的工具函数方法,主要聚焦于`source.js`文件中可能包含的内容。...

    JavaScript继承详解.doc

    JavaScript中的继承是面向对象编程的重要概念,它允许一个对象(子对象)获取另一个对象(父对象)的属性和方法,从而实现代码复用和多态性。JavaScript支持多种继承实现方式,包括以下四种: 1. **构造函数继承**...

    JavaScript继承机制研究.pdf

    JavaScript继承机制研究 在本文中,我们将深入探讨JavaScript继承机制的实现方式,并对基于原型的继承、构造函数方式继承、组合继承、寄生式继承等继承机制进行了总结归纳和分析。 基于原型的继承 JavaScript是...

    深入探索JavaScript的原型继承:机制、实现与最佳实践

    在JavaScript的世界里,原型继承不仅是实现对象功能共享的核心机制,也是其面向对象编程风格的基础。本文将深入探讨JavaScript原型继承的工作原理、实现方式以及在现代Web开发中的应用。 JavaScript的原型继承是一种...

    学习javascript面向对象 javascript实现继承的方式

    本文将详细介绍六种实现JavaScript继承的方法。 1. 原型链继承 原型链继承是通过改变子类型的原型对象来实现继承的。子类型构造函数的原型被替换为超类型构造函数的一个实例,这样子类型就可以继承超类型的所有属性...

    详解Javascript继承的实现

    本文将深入探讨JavaScript继承的实现方式,以及其中的问题和解决方案。 首先,我们来看混合方式的实现,这种方式结合了原型链和对象冒充。在JavaScript中,构造函数是用于创建特定类型对象的函数。例如,`Employee`...

Global site tag (gtag.js) - Google Analytics