JavaScriptでオブジェクトのメソッドを動的に選択する

JavaScriptでオブジェクトのメソッドに動的にアクセスする方法を学ぶ

オブジェクトがあり、条件に応じてメソッドまたは別のメソッドを呼び出す必要がある場合があります。

たとえば、あなたはcarオブジェクトとあなたはどちらかをしたいdrive()それまたはにpark()それは、driver.sleepy値。

ドライバーの睡眠レベルが6を超える場合は、運転中に眠りにつく前に車を駐車する必要があります。

これがあなたがこれを達成する方法ですif/else調子:

if (driver.sleepy > 6) {
  car.park()
} else {
  car.drive()
}

これをより動的になるように書き直してみましょう。

三項演算子を使用して、メソッド名を動的に選択し、それを文字列値として取得できます。

角括弧を使用して、オブジェクトの使用可能なメソッドから選択できます。

car[driver.sleepy > 6 ? 'park' : 'drive']

上記のステートメントを使用して、メソッド参照を取得します。括弧を追加することで、直接呼び出すことができます。

car[driver.sleepy > 6 ? 'park' : 'drive']()

私の無料ダウンロードJavaScriptビギナーズハンドブック


その他のjsチュートリアル: