当构造函数有返回值 + 赋值语句的返回值

       function Person(){
            this.age = 18;
            //return 123;//返回简单类型
            return {age: 20};//返回一个对象
        }
        var p = new Person();
        alert(p.age);// 18 || 20
        //构造函数的规范定义:
        //当构造函数返回简单类型时,与无return语句时表现是一样的,返回实例化的对象,
        //当返回是引用类型对象时,则返回引用对象的值。


    ====================================
 var obj = {member:33};
 function setMember(p){
      return obj.member = p;
 }
console.log(obj.member);//33
console.log(setMember({ss: 123}));//{ss:123} 返回赋值语句右边的值
console.log(obj.member);//{ss:123} setMember的return语句 也是执行了的,即obj.member也被修改成最新的值
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容