我正在嘗試使用 Spread 運算子將陣列作為引數傳遞,但出了點問題。
function addThreeNumbers(x:number, y:number, z:number){
console.log(x y z)
}
const args: number[] = [2,6,4]
addThreeNumbers(...args)

uj5u.com熱心網友回復:
正如錯誤所說:
擴展引數必須具有元組型別或傳遞給休息引數。
所以要么做args一個元組,比如 withas const所以它不會擴大到number[]:
const args = [2, 6, 4] as const;
或者將引數改為休息引數:
function addThreeNumbers(...args: number[]) {
console.log(args[0] args[1] args[2])
// or args.reduce((a, b) => a b, 0)
}
uj5u.com熱心網友回復:
為了讓 TypeScript 正確預測哪些引數型別將傳播到引數中,您必須將args變數型別更改為元組,如下所示:
const args: [number, number, number] = [2, 6, 4];
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/454819.html
標籤:javascript 数组 打字稿 休息 传播
