javascript エラー「Uncaught TypeError: xxx must be called on a function」の解決方法
- 作成日 2022.05.05
- 更新日 2022.11.29
- javascript
- javascript
javascriptで、エラー「Uncaught TypeError: xxx must be called on a function」が発生した場合の原因と解決方法を記述してます。
環境
- OS windows11 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 107.0.5304.122
エラー内容
以下のコードを実行時に発生。
const obj = {
prop:100,
fn:function (){ console.log(this);}
}
const arr = [0, 1]
console.log(
arr.forEach(obj.fn.bind)
)
エラーメッセージ
Uncaught TypeError: Bind must be called on a function
画像
firefox(バージョン107)では、以下のエラーとなります。
Uncaught TypeError: Function.prototype.bind called on incompatible target
画像
原因
「bind」の後ろに「()」がないため
解決方法
「()」をつける
const obj = {
prop:100,
fn:function (){ console.log(this);}
}
const arr = [0, 1]
console.log(
arr.forEach(obj.fn.bind())
)
実行結果
-
前の記事
kotlin mutableSetに指定した値が含まれているかを判定する 2022.05.04
-
次の記事
jquery キーを押下した時のイベントを取得する 2022.05.05
コメントを書く