lan*_*gtu 35 arrays arguments typescript
我有两种方法:
static m1(...args: any[]) {
//using args as array ...
}
static m2(str: string, ...args: any[]){
//do something
//....
//call to m1
m1(args);
}
Run Code Online (Sandbox Code Playgroud)
呼吁m1(1,2,3)
按预期工作.但是,呼叫m2("abc",1,2,3)
将转移到m1([1,2,3])
,而不是预期:m1(1,2,3)
.
那么,如何args
在调用m1
in 时传递参数m2
?
Ric*_*ove 108
实际上,...
在调用方法时再次使用将起作用.
它会在javascript中为您生成应用调用.
static m1(...args: any[]) {
//using args as array ...
}
static m2(str: string, ...args: any[]){
//do something
//....
//call to m1
// m1(args);
// BECOMES
m1(...args);
}
Run Code Online (Sandbox Code Playgroud)
use*_*016 19
T.m1.apply(this, args);
Run Code Online (Sandbox Code Playgroud)
其中T是封闭类m1
.