JavaScript中 构造函数的new都做了什么

  1. 创建一个新的对象
  2. 将新建的对象设置为函数中的this,在构造函数中可以使用this来引用新建的对象(将构造函数的作用域赋给新对象)
  3. 逐行执行函数中的代码(执行构造函数中的代码,为这个新对象添加属性)
  4. 将新建的对象作为返回值返回
			var arr = new Array;
			console.log(arr);
			console.log(Array.prototype);

下图中左边是console.log(arr);右边是console.log(Array.prototype);
在这里插入图片描述
由此可见这个过程就相当于:

var arr  = {};
arr.__proto__ = Array.prototype;
Array.call(arr);
发布了131 篇原创文章 · 获赞 451 · 访问量 54万+

猜你喜欢

转载自blog.csdn.net/qq_36667170/article/details/105059385