1
我有以下簡單的函數,它接受任何類型的參數,並應該返回一個數字:應該TypeScript保證函數的返回值嗎?
function foo(x:any): number {
return x.bar;
}
var b = {bar: "shit happens"};
console.log(foo(b)); // foo returns 'shit happens' which is not a number.
看來,如果x.bar不包含一個號碼,然後這個函數的返回值可以是任何東西。
我的問題是:有沒有一種方法可以保證函數的返回值總是一個數字而沒有別的(就像在其他強類型語言中一樣)?如果不是,那麼使用TypeScript的優點是,如果輸入系統只提供了應該使用的優選返回類型的「提示」並允許不正確的返回類型。