JS面试题之new一个对象的过程

代码背景如下:

<script>
        function Person(pName){
            this.pName=pName
        }
        var man =new Person("ynline")
</script>

 

 

new一个新对象的过程:

1.创建一个新对象                                                           ===>  man

2.新对象会被执行[[prototype]]连接                                ===> man.__prototype__=People.prototype

3.新对象和函数调用的this会绑定起来(改变this指向)   ===>People.call(man,"ynline")

4.执行构造函数的代码                                                    ===>man.pName

5.如果函数没有返回值,那么就会自动返回这个新对象 ===>   return this

posted @ 2022-08-11 02:54  Ynline  阅读(433)  评论(0)    收藏  举报