@Astral100498

Как с помощью JSON.parse дойти до вложенных элементов?

Разрабатываю расширение. После запроса на сервер получаю JSON файл с вложенными элементами. Есть рабочий кусок сделанный с помощью метода eval().response - это полученный массив

$.ajax({
          method: 'POST',
          url: `https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=${request.langCode}&dt=t&q=${encodeURI(request.word)}`,
        })
        .done(function (response) {//Обработчик при успешном выполнении 
          
          let range = selectedText.getRangeAt(0);
          let result = '';

          range.deleteContents();// Удаляет выделенную область 
          
          for (let i = 0; i < eval(response)[0].length; i++) {

            result = result + eval(response)[0][i][0];//Достаем из json переведенные слова
          }


Как мне переделать последние две строчки только с помощью JSON.parse?

Полученный json от сервера
[
  [
    [
      "my name is DIMA",
      "мое имя ДИМА",
      null,
      null,
      3,
      null,
      null,
      [
        []
      ],
      [
        [
          [
            "86e6f450b8cc469628ba70bf2947b049",
            "ru_en_2020q2.md"
          ]
        ]
      ]
    ]
  ],
  null,
  "ru",
  null,
  null,
  null,
  1,
  [],
  [
    [
      "ru"
    ],
    null,
    [
      1
    ],
    [
      "ru"
    ]
  ]
]
  • Вопрос задан
  • 221 просмотр
Решения вопроса 1
Seasle
@Seasle Куратор тега JavaScript
JSON.parse(response);

UPD:
const data = JSON.parse(`{"sentences":[{"trans":"Привет мир","orig":"Hello World","backend":1}],"src":"en","spell":{}}`);

const words = data.sentences.map(sentence => sentence.trans);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы