JavaScript でこのポインティング エラーを解決する方法を説明する例 (画像とテキストのチュートリアル)

亚连
リリース: 2018-05-21 09:48:23
オリジナル
1810 人が閲覧しました

JavaScript でのこのポインターの処理は、誰にとっても共通の悩みの種です。ここでは、JavaScript でのこのポインターのエラーを解決する方法を説明する例を示します。必要な方は、それを参照してください。

次のオブジェクト定義を見てください。

'use strict'
var jane = {
  name : ‘Jane',
  display : function(){
    retrun 'Person named ' + this.name;
  }
};
ログイン後にコピー

このように、次の呼び出しは失敗します。

すべての関数には、次のような特別な this 変数があります。次の forEach

jane.display();
ログイン後にコピー

sayHiToFriends を呼び出すとエラーが発生します:

var func = jane.display;
func()
ログイン後にコピー

TypeError: Cannot read property 'name' of undefined
ログイン後にコピー

解決策 1:

これは別の変数に保存されますか

var func2 = jane.display.bind(jane);
func2()
ログイン後にコピー

解決策2:

forEach の 2 番目のパラメータを使用すると、これに値を割り当てることができます

'Penson named Jane'
ログイン後にコピー

上記は、私が皆さんのためにまとめたものです。将来的に皆さんのお役に立てれば幸いです。

関連記事:

JavaScript でオブジェクトを作成する 7 つの方法 (概要、必読)

JavaScript は Java で Map オブジェクト関数を実装します (詳細な回答、コードが添付されています)

JavaScript の構築関数と新しいオペレーター (重要なポイント、必読)

以上がJavaScript でこのポインティング エラーを解決する方法を説明する例 (画像とテキストのチュートリアル)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート