Javascript教程
JavaScript基础
JavaScript Objects
JavaScript BOM
JavaScript DOM
JavaScript OOP
JavaScript Cookies
JavaScript事件
JavaScript异常
JavaScript常用

Reflect.construct()

JavaScript Reflect.construct()方法

静态的 Reflect.construct()方法允许调用带有可变数量参数的构造函数。它还提供了添加选项来指定其他原型。

语法

Reflect.construct(target, argumentsList[, newTarget])

参数

target:它是要调用的目标函数。
argumentsList :这是一个类似数组的对象,用于指定应调用目标的参数。
newTarget :它是应使用其原型的构造函数。另请参见new.target运算符。如果不存在newTarget,它将被视为目标。

返回

此方法返回已初始化的目标的新实例(如果存在,则返回newTarget)。

异常

如果target或newTarget不是构造函数,则此异常将引发TypeError。

示例1

const a = new Array(1,2,3);
const b = Reflect.construct ( Array, [1,2,3] );
console.log(a);
console.log(b);
输出:
 [1,2,3]
 [1,2,3]

示例2

function func1(a, b, c) {
  this.sum = a + b + c;
}
const args = [1, 2, 3];
const object1 = new func1(...args);
console.log(object1.sum);
输出:
 6

示例3

function func1(a, b, c) {
  this.sum = a + b + c;
}
function func2(a, b, c) {
  this.sum = a + b + c;
}
const args2 = [1, 4, 3];
const args = [1, 2, 3];
const object1 = new func1(...args);
const object2 = Reflect.construct(func2, args2);
console.log(object2.sum);
console.log(object1.sum);
输出:
8
6
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4