zoukankan      html  css  js  c++  java
  • 关于js的对象原型继承(一)

    javascript中,对象的继承是通过原型去继承。

    可以这样理解:js中的对象,包含的除了属性和方法,还有一个最基本的原型__proto__对象。这个原型__proto__指向谁,这个对象就继承谁。这是最容易理解对象原型继承的一种方式。

    如下面的代码:

    var student={
        name:'zhangsan',
        age:21,
        run:function(){
            return this.name+' is running!';
        }
    };
    
    var xiaoming={
        name:'xiaoming'
    };
    
    xiaoming.__proto__=student;

    xiaoming这个对象除了拥有自己的name属性,还继承了student对象。可以直接调用student的run方法,如:xiaoming.run();

    当然,直接对对象的__proto__赋值不是一种好的方法,可以用Object.create(A)来代替。如下面的代码:

    var student={
        name:'zhangsan',
        age:21,
        run:function(){
            return this.name+' is running!';
        }
    };
    
    function createStudent(name){
        var stu=Object.create(student);
        stu.name=name;    return stu;
    }
    
    var xiaoming=createStudent('xiaoming');
    
    document.write(xiaoming.__proto__ === student); //true

    以上代码证明使用Object.create(A)来创建一个对象,这个对象的__proto__指向的是A对象。

    这只是创建原型继承的众多方法之一。

  • 相关阅读:
    国行ME525+(2.3.6)手机系统的备份方法
    JS定时刷新页面及跳转页面
    Webservice数据迁移
    SQL表A更新和表B同步
    C#面试题3
    移动互联
    新闻内容翻页
    教你怎么把服务器上的数据库备份到本地计算机
    asp.net性能优化
    sql2005数据库备份—sql语句
  • 原文地址:https://www.cnblogs.com/williamwsj/p/7118828.html
Copyright © 2011-2022 走看看