Can I Use Variables as Object Property Names in JavaScript?
Dec 25, 2024 am 10:05 AMHow to Dynamically Define Object Property Names in JavaScript
JavaScript object literals are convenient for defining a collection of key-value pairs, where keys represent property names and values represent property values. However, a common question arises: can we use a variable as a key in an object literal?
The answer to this question depends on the JavaScript version. In ES5 and earlier, using a variable directly as a key in an object literal won't work. For example:
var thetop = 'top'; something.stop().animate({ thetop: 10 }, 10); // Doesn't work
This is because in ES5, object property names must be enclosed in double quotes or single quotes.
Solution for ES5 and Earlier
To use a variable as a key in ES5, you need to create an object literal and manually assign the property value using the variable name as the property key:
var aniArgs = {}; aniArgs[thetop] = 10; // Assign value to property using variable name as key something.stop().animate(aniArgs, 10); // Pass the object literal to the animate method
ES6 Computed Property Names
ES6 introduces the concept of ComputedPropertyName, which allows the use of variables and expressions as property names inside object literals. This syntax looks like:
const obj = { [variableOrExpression]: value };
Using this syntax, you can dynamically define property names using variables, for example:
var thetop = 'top'; const obj = { [thetop]: 10 }; console.log(obj.top); // Prints 10
This syntax is supported in modern browsers and can simplify the process of defining object property names dynamically.
The above is the detailed content of Can I Use Variables as Object Property Names in JavaScript?. For more information, please follow other related articles on the PHP Chinese website!

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Replace String Characters in JavaScript

Custom Google Search API Setup Tutorial

8 Stunning jQuery Page Layout Plugins

Improve Your jQuery Knowledge with the Source Viewer

10 Mobile Cheat Sheets for Mobile Development
