3

In nodejs I was creating a list of objects with each object supposed to have a string key and a number as value. I am able to create this without issues but while trying to log this with console.log() . I could see some keys did not have a single quotes surrounding the key while some did.

eg

[
    { '2d22f294': 0 },    
    { b6d108da: 0 },
    { b17562ff: 0 },
    { '0e4a0beb': 0 }
  ]

Could anyone explain what does it mean to have a single quotes surrounding the key , I was of the assumption this meant the key was a string but even the ones without single quotes around the keys are strings and act like strings.

ArunJose
  • 1,999
  • 1
  • 10
  • 33

2 Answers2

4

If it's starts with a number, then printing must show you valid javascript and quotes tell you that the key is a string (not a number).

Dimitri Kopriwa
  • 13,139
  • 27
  • 98
  • 204
1

If you have an object like this

let object = {
    name: 'Jim',
    25: 'Age'
}

You can access the properties in the following way:

  • for the namekey ... object.name or object['name'].

  • for the key 25 ... object[25] or object['25']

This is because properties cannot start with a number in js. Therefore you have to access them with brackets.

Peter Seliger
  • 11,747
  • 3
  • 28
  • 37
mrJQuery
  • 191
  • 9