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!'
};
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3