Proxy.handler.construct

Proxy.handler.construct

handler.construct() 方法用于拦截new操作. 为了使新的操作在生成的Proxy对象上有效,用于初始化代理的目标本身必须具有[[Construct]]内部方法(即new target必须是有效的)。

语法

var p = new Proxy(target, { construct: function(target, argumentsList, newTarget) { } }

参数

下面的参数被传递给construct方法,this绑定在handler上.

target目标对象

返回值

construct方法必须返回一个对象.

描述

handler.construct()方法用于拦截new.

拦截

该拦截器可以拦截以下操作:

  • new proxy(...args)

  • Reflect.construct()

约束

如果违反以下约定,代理将会抛出错误TypeError:

  • 结果必须是Object