javascript エラー「Uncaught TypeError: Promise.resolve is not a constructor」の解決方法
- 作成日 2023.01.16
- javascript
- javascript
javascriptで、エラー「Uncaught TypeError: Promise.resolve is not a constructor」が発生した場合の原因と解決方法を記述してます。メソッドである「Promise.resolve」に対して「new」を使用した場合に発生します。「chrome」や「firefox」や「safari」の各ブラウザのエラーメッセージの画像もキャプチャしてます。
環境
- OS windows11 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 109.0.5414.75
エラー内容
以下の、「Promise.resolve」を使用したコードで発生。
const result = new Promise.resolve(
'foo'
);
エラーメッセージ
Uncaught TypeError: Promise.resolve is not a constructor
画像
firefox106の場合では、以下のエラーが発生します。
Uncaught TypeError: Promise.resolve is not a constructor
画像
safari15.5では、以下のエラーとなります。
TypeError: function is not a constructor (evaluating 'new Promise.resolve(
'foo'
)')
画像
原因
「Promise.resolve」はメソッドなので「new」は使用する必要はないため。
解決方法
「new」を使用しない
const result = Promise.resolve(
'foo'
);
console.log(result);
実行結果
または、「new」を使用するなら「Promise」を使用する
const result = new Promise((resolve, reject) => {
resolve('foo');
});
console.log(result);
-
前の記事
Rust unix timeから日付に変換する 2023.01.15
-
次の記事
chrome 全画面表示に変更するショートカットキー 2023.01.16
コメントを書く