Если вы используете опцию --strict
, функция call
будет определена как
call<T, A extends any[], R>(this: (this: T, ...args: A) => R, thisArg: T, ...args: A): R;
, как вы можете видеть, R
теперь является типом возвращаемого значения.
Для вашего Например, вы можете установить R
как number[]
let result2 = Array.prototype.map.call<string[], any[], number[]>(input, (str: string) => Number(str));
Теперь result2
это number[]
.