I have an object like:
var myObject = { '0' : 'blue' };
Now, when I try to access the value of the key '0' like:
myObject.0
...I am getting an error. (Maybe this is not the proper way?)
How can I access the value of a key that is a number (like the above)?
To dynamically access an object's property: Use keyof typeof obj as the type of the dynamic key, e.g. type ObjectKey = keyof typeof obj; . Use bracket notation to access the object's property, e.g. obj[myVar] .
According to the official JavaScript documentation you can define object literal property names using integers: Additionally, you can use a numeric or string literal for the name of a property.
This should work:
myObject["0"]
(myObject["propertyName"]
is an alternative syntax for myObject.propertyName
.)
You're getting the error because, in JavaScript, identifiers can't begin with a numeral. From the Variables page at the Mozilla Developer Centre:
A JavaScript identifier must start with a letter, underscore (_), or dollar sign ($); subsequent characters can also be digits (0-9). Because JavaScript is case sensitive, letters include the characters "A" through "Z" (uppercase) and the characters "a" through "z" (lowercase).
myObject["0"]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With