Noms de propriétés dynamiques dans l'initialisation d'objet
On peut rencontrer des problèmes lors de l'initialisation d'un objet à l'aide de noms de clés non littéraux. Par exemple, le code suivant échoue avec un message d'erreur concernant un caractère ':' attendu :
var KEYS = {} ; KEYS.PHONE_TYPE = 'phone-type'; KEYS.AGENT_TYPE = 'agent-type'; var myAppConfig = { ... iconMap : { KEYS.PHONE_TYPE : 'icon-phone', KEYS.AGENT_TYPE : 'icon-headphones' }; ... };
Solution pour ES6
Utilisation de la syntaxe ES6, noms de propriétés dynamiques peut être créé à l’aide de crochets. Le code mis à jour ressemblerait à ceci :
iconMap : { [KEYS.PHONE_TYPE] : 'icon-phone', [KEYS.AGENT_TYPE] : 'icon-headphones' };
Cette approche permet de créer des objets avec des noms de propriété dynamiques en mettant le nom de propriété souhaité entre crochets.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!