1. ホーム
  2. javascript

[解決済み] TypeScriptで関数の戻り値の型を宣言する方法

2022-03-01 07:02:35

質問

ここで確認したのは https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md というのは TypeScript言語仕様 が、関数の戻り値の型を宣言する方法が見つかりませんでした。

私が期待していたものを以下のコードで示しました。 greet(name:string): string {}

class Greeter {
  greeting: string;
  constructor(message: string) {
    this.greeting = message;
  }
  greet(): string {
    return "Hello, " + this.greeting;
  }
}

を使うことができるのは知っています。 (name:string) => any が、これは主にコールバック関数を渡すときに使用されます。

function vote(candidate: string, callback: (result: string) => any) {
  // ...
}

解決方法は?

その通りです。以下は完全に動作する例で、次のことがわかります。 var result は暗黙のうちに文字列になっています。 greet() 関数を使用します。この型を number と警告が出ます。

class Greeter {
    greeting: string;
    constructor (message: string) {
        this.greeting = message;
    }
    greet() : string {
        return "Hello, " + this.greeting;
    }
} 

var greeter = new Greeter("Hi");
var result = greeter.greet();

これは数字の例です。これを試すと、プレイグラウンドエディタに赤い四角が表示されるでしょう。

greet() : number {
    return "Hello, " + this.greeting;
}