JavaScript Propiedades con caracteres especiales o palabras reservadas.


Ejemplo

Si bien la notación de propiedad del objeto generalmente se escribe como myObject.property , esto solo permitirá caracteres que normalmente se encuentran en los nombres de variables de JavaScript , que son principalmente letras, números y guiones bajos ( _ ).

Si necesita caracteres especiales, como espacio, o contenido proporcionado por el usuario, esto es posible mediante la notación de corchetes [] .

myObject['special property ☺'] = 'it works!'
console.log(myObject['special property ☺'])

Propiedades de todos los dígitos:

Además de los caracteres especiales, los nombres de propiedades que son todos dígitos requieren notación de corchete. Sin embargo, en este caso, la propiedad no necesita escribirse como una cadena.

myObject[123] = 'hi!' // number 123 is automatically converted to a string
console.log(myObject['123']) // notice how using string 123 produced the same result
console.log(myObject['12' + '3']) // string concatenation
console.log(myObject[120 + 3]) // arithmetic, still resulting in 123 and producing the same result
console.log(myObject[123.0]) // this works too because 123.0 evaluates to 123
console.log(myObject['123.0']) // this does NOT work, because '123' != '123.0'

Sin embargo, los ceros iniciales no se recomiendan, ya que se interpreta como notación octal. (TODO, deberíamos producir y vincular a un ejemplo que describa la notación octal, hexadecimal y exponente)

Véase también el ejemplo: [Las matrices son objetos].