[解決済み] TypeScriptのsetTimeoutはどのような戻り値型を使用すればよいですか?
2022-03-03 11:53:16
質問
次のコードを考えてみてください。
const timer: number = setTimeout(() => '', 1000);
Typescript がエラーを投げます。
Type 'Timer' is not assignable to type 'number'.
簡単に調べると
setTimeout
を返します。
NodeJS.Timer
.
しかし、もし私が
ブラウザベースの開発
を使用しています。
NodeJS.Timer
が間違っている気がする。を作るための正しい型定義や戻り値の型はどれでしょうか?
setTimeout
に頼ることなく動作します。
any
を宣言するのですか?
どのように解決するのですか?
最も単純な解決策は、型推論が機能するようにし、型を一切指定しないことです。ブラウザとノード宣言の間で型が一貫していないことを見て、型を指定する必要がある場合は、次のようにすることができます。
ReturnType
の戻り値の型が何であれ、その変数の型になるように指定します。
setTimeout
があります。
const timer: ReturnType<typeof setTimeout> = setTimeout(() => '', 1000);
交互に
window.setTimeout
を使用することもできます。
setTimeout
. これは、適切な戻り値の型を返します。
関連
-
[解決済み】Typescriptで、! (エクスクラメーションマーク/バン)演算子でメンバを再参照するのは?
-
[解決済み】tsconfigファイルにおけるesModuleInteropの理解
-
[解決済み】プロパティ 'value' が 'HTMLElement' 型の値に存在しない。
-
[解決済み] TypeScriptエラー TS1005: ';' が予想される (II)
-
[解決済み] TypeScriptのオブジェクトリテラルでの型定義
-
[解決済み] Typescript によるインターフェース型チェック
-
[解決済み] ジェネリックスを使用したTypescriptのarrow関数の構文はどのようになっていますか?
-
[解決済み] タイプスクリプトのレコードタイプとは何ですか?
-
[解決済み】Typescriptのパラメータ名のクエスチョンマークとは?
-
[解決済み】TypeScript - 正しいバージョンのsetTimeoutを使用する(ノードとウィンドウの比較)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】tsconfigファイルにおけるesModuleInteropの理解
-
[解決済み] Jest で typescript を使用して identity-obj-proxy を使用すると未定義が返される
-
[解決済み] TypeScriptの「as const」の意味とその使用例とは?
-
[解決済み] TypeScript - Angular: 複数行の文字列
-
[解決済み] Jestで関数をモックする方法
-
[解決済み] TypeScriptのInterface Function Property。何が違うの?
-
[解決済み] オブジェクトの配列に対してインターフェースを定義するには?
-
[解決済み] TypeScriptでオブジェクトを初期化する方法
-
[解決済み] TypeScriptのファイル変更時にts-nodeを監視して再読み込みする方法
-
[解決済み】TypeScript - 正しいバージョンのsetTimeoutを使用する(ノードとウィンドウの比較)