Der folgende Code ist korrekt kompiliert und wird von ts-node ausgeführt.In Typescript was ist Array als Funktionsname?
class C {
["abc"]() {
return "C";
}
}
let c = new C();
let className = c["abc"]();
console.log(className);
Aber ich verstehe nicht, die folgenden als Klasseneigenschaft.
Ich denke, es beinhaltet ein Konzept der berechneten Eigenschaft, aber ich verstehe diese Syntax nicht.
Frage 1:
[ "abc"] ist ein Array mit einem Schnurelement bei Index 0. Wenn man sich eine Funktionsdefinition hinzufügen, dann [ "abc"]() {}, dann was ist es dann? Wie könnten Sie ein Array als Funktionsname verwenden?
Frage 2:
warum nicht die folgende Art und Weise das Element Methode aufzurufen?
c.["abc"]();
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer – SLaks
@SLaks danke! Dies ist das Konzept, das ich vorher nicht kannte. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Computed_property_names –