以下のコードはts-nodeによって正しくコンパイルされ、実行されます。Typescriptでは配列は関数名とは何ですか?
class C {
["abc"]() {
return "C";
}
}
let c = new C();
let className = c["abc"]();
console.log(className);
しかし、私はクラスプロパティとして次のことを理解していません。
["abc"]() {}
計算されたプロパティの概念が含まれていると思いますが、この構文はわかりません。
質問1:
[ "ABC" は]は[ "ABC"](){}、次いで、その周り関数定義を追加した場合はインデックス0に1つの文字列の要素を持つ配列でありますそれは何ですか?どのように配列を関数名として使用できますか?
質問2:
メンバーメソッドを呼び出すための理由ではない、以下の方法はありますか?
c.["abc"]();
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer – SLaks
@SLaksありがとう!これは以前私が知らなかった概念です。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Computed_property_names –