`
hduyou
  • 浏览: 23394 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

js学习 伪类及原型

阅读更多
构造伪类来继承Mammal,通过定义它的constructor函数并替换它的prototype为一个mammal的实例来实现
var Mammal = function(name) {
	this.name = name;
};
Mammal.prototype.get_name = function() {
	return this.name;
};
Mammal.prototype.says = function() {
	return this.saying || '';
};

var Girl = function(name) {
	this.name = name;
	this.saying = 'you';
	//this.girl = 'fang';
};

Girl.prototype = new Mammal();

Girl.prototype.girl = function() {
	return 'fang';

};

Girl.prototype.purr = function(n) {
	var i, s = '';
	for (i = 0; i < n; i++) {
		if (s) {
			s += '-';
		}
		s += 'r';
	}
	return s;
};
Girl.prototype.get_name = function() {
	return this.says() + ' ' + this.name + ' ' + this.girl();
};

var myGirl= new Girl('love');
var says = myGirl.says();
var purr = myGirl.purr(5);
var name = myGirl.get_name();

document.writeln('  ' + says + '  ' + purr + '  ' + name + '  ');


原型  差异化继承
if (typeof Object.beget !== 'function') {
	Object.beget = function(o) {
		var F = function() {
		};
		F.prototype = o;
		return new F();
	}
};
var myPeople = {
	name : 'qiang love fang',
	get_name : function() {
		return this.name;
	},
	says : function() {
		return this.saying || '';
     }

};

var myGirl=Object.beget(myPeople);
myGirl.name='fang';
myGirl.saying='love';
myGirl.purr=function(n){
	var i,s='';
	for(i=0;i<n;i++){
		if(s){s+='-'}
		s+='r';
}
	return s;
};
myGirl.get_name=function(){
	return this.says()+' '+this.name+' '+this.says();
};
var name=myGirl.get_name();
document.writeln(name);
分享到:
评论

相关推荐

    考勤管理系统 html原型代码

    在这个原型中,可能包含了CSS类选择器、ID选择器、伪类和伪元素的应用,以及响应式设计(Responsive Design)的实现,确保页面在不同设备上都能良好显示。 3. JavaScript交互: 考勤管理系统往往需要动态交互功能,...

    css2和javascript学习教程

    这个“css2和javascript学习教程”压缩包包含了对这两个主题的深入学习资源,帮助初学者和进阶者提升技能。 CSS2是网页样式表语言的第二版本,它极大地增强了网页设计的灵活性和控制力。CSS2的核心知识点包括: 1....

    界面原型、tabs选项卡增加效果

    4. **Vue.js、React.js等前端框架**:在这些现代前端框架中,可以通过状态管理来控制tabs的切换,同时框架自带的过渡动画库可以实现平滑的切换效果。 在实现tabs选项卡时,需要注意以下几点: - 保持一致性:各个...

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

    在JavaScript中,面向对象编程是通过构造函数、原型链和继承实现的。继承是面向对象编程的核心概念之一,它允许我们创建一个新对象,该对象继承现有对象的属性和方法。在JavaScript中,实现继承有多种方式,每种方式...

    cezve.js:在所有对象上定义伪属性而不修改 Object.prototype

    在JavaScript编程语言中,`Object.prototype` 是一个特殊的...通过研究其源码,开发者不仅可以学习到如何在不破坏原型链的情况下扩展对象,还可以深入了解JavaScript的原型继承、对象创建以及兼容性处理等核心概念。

    图灵前端图书学习路线图1

    - **学习JavaScript数据结构与算法**:通过JavaScript学习数据结构(如数组、链表、栈、队列、树等)和算法(排序、搜索等),提升编程思维和解决问题的能力。 - **Head First JavaScript程序设计**:以轻松易懂的...

    网页制作之HTML+CSS+JAVAscript详细学习chm手册

    9. JavaScript高级特性:如闭包、原型链、this关键字、ES6及以上的新特性,如箭头函数、解构赋值、模板字符串等。 10. 实战项目:可能包括创建简单的动态网页、交互式表单、图片轮播、计时器等,帮助读者巩固理论...

    常用CSS跟JS效果整理

    6. **伪类与伪元素**:如:hover、:active、:focus等伪类,以及::before和::after伪元素,用于添加特殊样式。 7. **颜色和背景**:学习使用颜色值、渐变、背景图片等创建丰富的视觉效果。 8. **文字样式**:调整字体...

    Java学习精品面试题

    Java学习精品面试题涵盖了Java语言的基础知识和高级技术,包括CSS3新增的伪类、响应式布局的控制样式方式、获取DOM属性值的方法、数组操作、字符串操作、函数式编程、正则表达式、JSON对象、原型编程等。

    css和javascript的chm格式的帮助文档

    7. **ES6及以后版本**:ECMAScript的新特性,如模板字符串、解构赋值、箭头函数、let和const、类和模块等,极大地提升了JavaScript的可读性和开发效率。 这两个文档——"CSS样式表.CHM"和"JScript 语言参考.chm"将...

    js网页设计大赛作品

    总之,这份“js网页设计大赛作品”压缩包是一个绝佳的学习资源,它展示了JavaScript在网页设计中的多样性和强大能力,无论你是初学者还是有一定经验的开发者,都能从中汲取灵感,提升自己的技能。记得仔细研究每个...

    javascript手册

    通过深入学习并实践这些内容,你将能够熟练掌握JavaScript,并成为一名真正的JS小高手。在实际项目中,还需要结合最佳实践和最新的技术趋势,如React、Vue或Angular等前端框架,以提升开发效率和应用性能。

    You.Dont.Know.JS.this.and.Object.Prototypes.2014.7.pdf

    在《You Don't Know JS: this & Object Prototypes》一书中,作者Kyle Simpson深入探讨了JavaScript中的`this`关键字和对象原型机制。这本书不仅适合JavaScript新手,也适用于那些希望更深入理解语言核心特性的有...

    CSS和JS代码编写手册

    3. **对象和原型**:理解面向对象编程,学习如何创建和使用对象及原型链。 4. **异步编程**:包括回调函数、Promise和async/await,解决JavaScript的非同步问题。 5. **JavaScript库和框架**:如jQuery、React、...

    前端学习手册

    学习JavaScript,你需要理解变量、数据类型、控制流程、函数、对象和原型链等基础概念。同时,ES6(ECMAScript 6)的新特性如箭头函数、模板字符串、let/const、解构赋值、类和模块,也是现代JavaScript开发的重要...

    js代码-原型链和继承

    JavaScript是Web开发中的核心语言,尤其在前端领域扮演着至关重要的角色。在JavaScript中,对象的原型链和继承是理解其面向对象编程的关键概念。...因此,不断学习和掌握新的JavaScript特性也是每个开发者必备的技能。

    【HTML+CSS+JS+JSON+ES6笔记】.zip

    笔记可能包括选择器的使用(类选择器、ID选择器、伪类等)、盒模型(margin、padding、border、content)、布局技术(如Flexbox和Grid)、响应式设计(媒体查询`@media`)等内容。同时,CSS预处理器如Sass或Less也...

    taxonomy:实例化模式(功能、原型、伪经典)

    伪经典模式结合了构造函数和原型,提供了一种更接近类的语法结构。它通常通过`Object.create()`方法来实现,允许我们创建一个新的对象并继承另一个对象的原型: ```javascript var taxonomy = {name: 'Animal'};...

Global site tag (gtag.js) - Google Analytics