When attempting to create a dynamic key for a JavaScript object, using this syntax <pre>jsObj{'key' + i} = 'example' + 1;</pre> will not work. The correct approach employs square brackets:
jsObj['key' + i] = 'example' + 1;
In JavaScript, arrays are a specialized type of object, with the distinction being that they maintain a length property that reflects the count of numeric properties (indices) plus one. This special behavior is not mimicked by standard objects, but the square bracket operator works identically on both types.
For setting a property with a numeric key on an array instance, the length property will be automatically updated to reflect the largest numeric key. However, for a plain object, no such update occurs.
It's important to note that serializing an array instance to JSON only includes the numerically-named properties, excluding any others.
In ES6, you can use Computed Property Names for a more concise syntax:
var key = 'DYNAMIC_KEY',
obj = {
[key]: 'ES6!'
};
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3