猿问

为什么第一个例子可以修改原型链中的值?

为什么第一个例子可以修改原型链中的值,而第二个不可以?
此题和下面这个链接应该是同一原理吧,可我没太看明白
关于Object.create()与原型链的面试题?

有同学回答是原型链的原因,有同学说是引用的问题,求解?

var fun = function () {


    };


    fun.prototype = {

        info: {

            name: 'peter',

            age: 25

        }

    };


    var a = new fun();

    var b = new fun();


    a.info.name = 'jack';

    b.info.name = 'tom';

    console.log(a.info.name)//tom

    console.log(b.info.name)//tom


    var fun = function () {


    }


    fun.prototype = {

        name: 'peter',

        age: 25

    }


    var a = new fun();

    var b = new fun();


    a.name = 'jack';

    b.name = 'tom';

    console.log(a.name)//jack

    console.log(b.name)//tom


眼眸繁星
浏览 990回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答