js精要之继承

// 继承object.prototype的方法
// hasOwnProperty() //检查是否存在一个给定名字的自有属性
// propertyIsEnumerable() // 检查一个自有属性是否可枚举
// isPrototypeOf() // 检查一个对象是否是另一个对象的原型队形
// valueOf() // 返回一个对象的值表达
// toString() // 返回一个对象的字符串表达

  var now = new Date();
    var earlier = new Date(2010,1,1);
    console.log(now.valueOf()); // 默认转换
    console.log(now > earlier);

 

 // 对象book 默认调用toString()方法

  var book = {
        title:"this is book!"
    }
    var mes = "book = " + book;
    console.log(mes); // book = [object Object]now
    var book = {
        title:"this is book!",
        toString:function(){
            return "book = " + this.title;
        }
    }
    var mes = "book = " + book;  //book = book = this is book!
    console.log(mes);

// 给所有对象的原型上添加add()方法

 Object.prototype.add = function(){
        return this;
    }
    var empty = {};
    for(var prototype in empty){
        console.log(prototype); //add
    }
    for(var prototype in empty){
        if(empty.hasOwnProperty(prototype)){ // 判断是自有属性
            console.log(prototype); // 没有运行
        }
        
    }

 

posted @ 2016-02-15 15:14  月半字  阅读(124)  评论(0编辑  收藏  举报