Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

93
Vistas
Retrieve JSON data with string variable

I'm developing custom field plugin for Jira Cloud in React.

I have a variable cfDate1 which is stores custom field id as a string like customfield_10072.

So I want to reach the time data inside my custom field id.

Let's say my data is in jsonData variable. I try to reach with jsonData.fields.[cfDate1] but I get Error: Identifier expected.

I searched a few but I think I couldn't find the right keywords to get some solutions. Is there anyone can help me to figure it out. I need to learn how to reach json data in my json query with a string variable. Thanks already!

JSON Format (jsonData):

{
  "expand": "renderedFields,names,schema,operations,editmeta,changelog,versionedRepresentations,customfield_10010.requestTypePractice",
  "id": "10008",
  "self": "https://alimert.atlassian.net/rest/api/2/issue/10008",
  "key": "SP-1",
  "fields": {
    "statuscategorychangedate": "2021-10-11T12:17:41.291+0300",
    "customfield_10072": "2021-01-13T02:00:00.000+0300",
    "customfield_10073": "2021-01-26T06:30:00.000+0300",
    "customfield_10075": "2021-10-14",
    "customfield_10076": "2021-10-15" }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

It has to be jsonData.fields[cfDate1] and not jsonData.fields.[cfDate1].


There are four ways to access a property of an object1:

Syntax Dynamic
key
Optional
chaining
. [] ? Equivalents2
obj.xyz No No Yes No No obj['xyz']
obj[key] Yes No No Yes No -
obj?.xyz No Yes Yes No Yes obj == null ? obj.xyz : undefined
obj == null ? obj['xyz'] : undefined
obj?.[key] ⚠️ Yes Yes Yes ⚠️ Yes Yes obj == null ? obj[key] : undefined

As you can see in this table, in most cases you use either . (for static keys) or [] (for dynamic keys).

Optional chaining adds a ?. However, in the case of optional chaining and a dynamic key, the possibly unexpected syntax of ?.[] is used which has both . and []3. Note that this is only the case with optional chaining - without optional chaining, the syntax .[] is not valid.


1: There is also Reflect.get(obj, key), and you could stretch that definition to count something involving walking the prototype chain, calling Object.getOwnPropertyDescriptor and accessing value or get as well, if you really wanted to. But for a beginner, these would be, if anything, more of academic interest and rather confusing to include in a list of property access methods for everyday use.

2: For optional chaining, the shown equivalents only apply to the case of no further level of chaining (e.g. obj?.xyz but not obj?.xyz.abc). An additional - quite useful - property of the optional chaining operator is that it stops evaluation of the rest of the expression entirely in case the left-hand side is nullish, so that you can write obj?.xyz.abc instead of obj?.xyz?.abc without an error Cannot read properties of undefined (reading "abc"). With the shown equivalent that wouldn't work.

3: The reason for this slightly awkward syntax is that optional chaining was added to the language only recently, and ?[] couldn't have been used due to ambiguity with the ternary operator and added difficulty in writing parsers to handle this situation. The same goes for ?.(). See FAQ in the optional chaining proposal for more information.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda