①JavaScript一切都派生于现有对象的一个副本,即对象赋值跟另一个对象,只是复制对象的副本,并不是指针引用,两者之间的属性值改变,并不相互影响
②对象=关联数组=属性包=存储体,即键/值形式,<属性名/属性值>或<函数名/函数动作>等
③原型中读取的时候从原型链上读取,写入的时候往自己里面写,即读取的时候先从自身查找,没有则从上层父类查找,直至顶层Object对象,而写入则只是写在自身之中
实例解析:
<script>
/*对象赋值,只是复制对象的副本,两者之间的属性值的改变并不相互影响*/
var person={};
person.name="person";
var student={};
student.name=person.name;
person.name="hzp";
alert(person.name); //打印hzp
alert(student.name);//打印person
/*********类的继承********/
function Person(){
this.name="person";
this.getName=function(){
alert(this.name);
}
}
function Student(){
}
Student.prototype=new Person(); //继承Person
function init(){
var s1=new Student();
s1.getName();//打印person
alert(s1.age);//原型中读的时候从原型链上读,先从Student自身找age,没有就从上层父类Person找,直至顶层父类Object,最终没有找到,打印undefined
Person.prototype.age=22;
var s2=new Student();
s2.name="hzp";
s2.getName();
alert(s2.age); //原型中读的时候从原型链上读,先从Student自身找age,没有就从上层父类Person找,结果找到了age
}
init();
/***原型中读的时候从原型链上读,写的时候往自己里面写****/
function object2(){
}
function object3(){
}
var obj3=new object2();
Object.prototype.foo=function(){
alert("object");
}
obj3.foo(); //读的是Object里的foo
object2.prototype.foo=function(){
alert("object2");
}
obj3.foo();//读的是object2里的foo
</script>
分享到:
相关推荐
JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在... 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
资源名称:JavaScript面向对象编程指南(第2版)内容简介:1.本书是唯一一本介绍Javascript面向对象编程的图书。2.本书作者是知名的Web开发人员和作者。受到国内众多前端开发人员,如淘宝UED团队的推崇和推荐...
JavaScript面向对象精要(英文版)JavaScript面向对象精要(英文版)JavaScript面向对象精要(英文版)JavaScript面向对象精要(英文版)JavaScript面向对象精要(英文版)JavaScript面向对象精要(英文版)
javascript面向对象编程指南 2nd英文版,英文名:Object-Oriented JavaScript。 What you will learn from this book The basics of object-oriented programming, and how to apply it in the JavaScript ...
javascript面向对象编程,真实教学材料
JavaScript面向对象编程指南是完整的扫描版...
JavaScript面向对象编程指南完整版是扫描的....
JavaScript面向对象编程指南 pdf,学习JavaScript实用,难得。
JavaScript面向对象编程.pdf
Javascript 面向对象的JavaScript进阶 Javascript技术
JavaScript面向对象编程指南(第2版).pdf 高清带目录
javascript面向对象编程--传智播客--蔡世友