0
うまくいけば、これは簡単な答えです。オブジェクトの内部からメソッドを呼び出そうとしていますが、コンソールは関数が関数ではないというエラーを投げています。オブジェクト内の内部関数を呼び出す
function tabs(el, data){
this.el = el;
this.addTab = function(data){
console.log("addTab", this.el, data);
};
data.forEach(function(data){
this.addTab(data);
});
}
私はそうのように、最初は私のオブジェクトを呼び出しています:
var t = new tabs("tabs", []);
私のエラーは、addTabが関数ではないということです。
* why *の違いについて説明すると、より良い回答になります。 – Quentin
ありがとう。私は、矢印機能の追加機能を認識していませんでした。私は元のコード内でも、なぜ動作しませんaddTab(とthis.addTabではない)を使用していますか? –
'addTab'は現在のオブジェクトにバインドされているためです。だからあなたはそれから 'addTab'を呼び出すよりもそのオブジェクトを見つける必要があります –