首页 > 文章列表 > JavaScript中new函数的原理

JavaScript中new函数的原理

JavaScript new
174 2022-08-06

说明

1、new关键词将首先创建一个空对象。

2、将空对象的原型对象指向构造函数的原型属性。

从而继承原型方法。

3、this指向空对象。

执行构造函数中的代码,以获得私有属性。

4、如果构造函数返回对象res,则返回值res返回。

如果返回值不是对象,则返回创建的对象。

实例

function _new(target){
  var obj = {},
      params = [].splice.call(arguments,1),
      result;
 
  obj.__proto__ = target.prototype;
  result = target.apply(obj,params);
 
  if(result!=null && /(function|object)/.test(typeof result)){
    return result;
  }
  return obj;
}

推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。