js面向对象例子(原型继承和类继承)-3
2015-09-13 15:52
1026 查看
function Person(name){ this.name=name; } Person.prototype.getName = function(){ return this.name; } function User (age,name){ this.name = name; //如果传person的参数,那即使继承了person的方法也是无法使用的 this.age=age; } User.prototype.getAge = function(){ return this.age; } User.prototype = new Person(); //将person的方法加到user的原型链上 var user = new User('18','zhang'); var person = new Person(); console.log(user.getName());
function Person(name, age) { //定义一个类 this.name = name; //名字 this.age = age; //年龄 this.sayhello = function() { alert(this.name) }; } function Print() { //显示类的属性 this.funcName = "Print"; this.show = function() { var msg = []; for (var key in this) { if (typeof(this[key]) != "function") { //msg.push([key, ":", this[key]].join("")); msg.push([key,":",this[key]]); } } console.log(msg); }; } function Student(name, age, grade, school) { //学生类 // Person.apply(this, arguments); //比call优越的地方 Person.call(this,name,age); // Person.call(this,''); Print.apply(this, arguments); this.grade = grade; //年级 this.school = school; //学校 } var p1 = new Person("卜开化", 80); p1.sayhello(); var s1 = new Student("白云飞", 40, 9, "岳麓书院"); s1.show(); s1.sayhello(); alert(s1.funcName);
相关文章推荐
- Django调用JS、CSS、图片等静态文件
- js创建对象的几个常用方式
- js刷新方式
- ExtJS4组件_form表单配置-属性-方法详解
- js原生removeclass方法
- javascript严格模式下的8点规则
- 来访统计的JS代码
- 原生js--客户端存储的种类
- js面向对象的例子(私有/公有/特权方法)-2
- Javascript匿名函数
- json与xml对比
- Angular.js 与script.js 异步加载
- Javascript继承(暂略去中转函数、组合继承和寄生继承)
- js面向对象的例子-1
- 《javascript高级编程》读书笔记(两)javascript基本概念
- js 方法中内部属性arguments的callee属性
- 我的JS历史知识
- js中获取时间 new Date() 汇总
- 在html中键入javascript代码
- JS面向对象程序设计之创建对象模式