Citations dans les clés d'objet : une différence de sémantique ?
En JavaScript, les propriétés d'objet peuvent être définies à l'aide de clés avec ou sans guillemets. Bien que cela puisse sembler une différence mineure, cela introduit un changement subtil dans le comportement d'accès à la propriété.
Propriétés avec ou sans devis
Exemple
Considérons l'exemple suivant :
obj1 = {'foo': 'bar'}; obj2 = {foo: 'bar'};
Dans ce cas, obj1 et obj2 ont la même valeur-clé paire, mais la propriété est accessible différemment :
console.log(obj1.foo); // 'bar' console.log(obj2.foo); // ReferenceError: foo is not defined console.log(obj2['foo']); // 'bar'
Comme vous pouvez le voir, obj2 n'est pas accessible en utilisant la notation par points car la clé "foo" n'est pas un identifiant JavaScript valide. Au lieu de cela, la notation entre crochets doit être utilisée.
Remarque :
Bien qu'il n'y ait pas de différence significative de fonctionnalité entre l'utilisation ou non de guillemets, le format d'échange de données JSON nécessite des guillemets doubles. autour des clés de propriété. Si vous envisagez d'échanger des données au format JSON, il est recommandé de toujours utiliser des guillemets autour des clés d'objet.
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!