指定对象原型的方法总结

在平时的编程过程中,用构造函数创建实例对象比较多,则实例对象instance会继承构造函数原型,如下面例子所示:

function CreatePerson( name,age ){
            this.name = name;
            this.age = age;
        }
        CreatePerson.prototype = {
            printMsg:function(){
                for( prop in this ){
                    console.log( prop+": "+this[prop] );
                }
            }
        };
        var person = new CreatePerson('tester',16);
        //原型获取方式1
        console.log( person.__proto__ );
        //原型获取方式2
        console.log( Object.getPrototypeOf( person ) );
        //构造函数的原型
        console.log( CreatePerson.prototype );

打印结果如下:

今天在阅读mui框架源码时,发现了如下原型设置方法,即可在对象诞生后根据自己的需求给其补充原型!

        var person = { name:'tester',age:16 };
        Object.setPrototypeOf(person,{
            printMsg:function(){
                for( prop in this ){
                    console.log( prop+": "+this[prop] );
                }
            }
        });
        //原型获取方式1
        console.log( person.__proto__ );
        //原型获取方式2
        console.log( Object.getPrototypeOf( person ) );

打印结果如下:

后面如有新方法将继续补充......

posted @ 2018-09-13 14:04  sophel  阅读(234)  评论(0编辑  收藏  举报