Javascript - Как получить доступ к массивам записей - PullRequest
0 голосов
/ 27 ноября 2009

У меня есть массив, содержащий записи

v = [{stringA, stringB, arr[{stringC,stringD}]

Когда я пытаюсь извлечь значение stringA и stringB, Javascript возвращает {Object, Object}

Я пытаюсь использовать

strX = v[4].arr[2].stringC;

(этот подход работает при извлечении stringA и stringB, но не при извлечении stringC)

Пожалуйста, кто-нибудь знает, как это сделать?

Ответы [ 2 ]

1 голос
/ 27 ноября 2009

Ваш синтаксис очень неточный. Довольно сложно понять, какой структуры вы пытаетесь достичь, но это даже не будет выполнено из-за несопоставимых чисел [, ] и {, } в вашем объявлении v .

  • Вы можете создать массив, указав разделенные запятыми элементы в [, ]
  • Вы можете создать объект, указав разделенные запятыми пары property:value внутри {, }

Если вы хотите написать v[4].arr[2].stringC, вам нужна структура, которая выглядит как

var v = [item0, item1, item2, item3, {
      description: 'this is item 4',
      arr: [ subitem0, subitem1, {
          description: 'this is arr[2]',
          stringC: 'this is the value of string c'
      }
  }];
0 голосов
/ 27 ноября 2009

Вы хотите использовать:

strX = v[0].arr[0].stringC;

Не вижу смысла в том, чтобы вы помещали эти объекты в эти массивы. Если вы уберете квадратные скобки массива, вы захотите использовать следующее решение:

strX = v.arr.stringC;
...