JQuery каждый цикл для получения данных json

У меня есть эти данные в json, и я хочу загрузить их и использовать их в localStorage.

[
{
    "name": "Dexter",
    "year": "2006",
    "rating": "88%",
    "from": "USA",
    "kind": "crime / drama / thriller",
    "length": "96x55 min",
    "characters": [
      {
         "name": "Dexter Morgan",
         "actor": "Michael C. Hall"
      },
      {
         "name": "Debra Morgan",
         "actor": "Jennifer Carpenter"
      },
      {
         "name": "Angel Batista",
         "actor": "David Zayas"
      },
      {
         "name": "Hannah McKay",
         "actor": "Yvonne Strahovski"
      },
      {
         "name": "Joey Quinn",
         "actor": "Desmond Harrington"
      }
    ]
}, ... (+other tv series)]

Это мой код для загрузки данных и получения их в var jsonObj, который я использую для загрузки их в localStorage.

функция loadData(){

    $.getJSON("data.json",function(data){
     $.each(data, function(key, val){

          var charactersArray = [];

          $.each(data.characters, function(key, val){

              charactersArray += {
                    name: val.name,
                    actor: val.actor
              };
          }); 

          var jsonObj = { 
                          name: val.name, 
                          year: val.year, 
                          rating: val.rating, 
                          from: val.from, 
                          kind: val.kind,  
                          length: val.length, 
                          characters: charactersArray
                        };....

Единственное, что здесь не работает, это итерация для получения значений в charactersArray. Он пуст, только включает [] в результат. Может ли кто-нибудь помочь мне исправить это, чтобы получить идентичные данные в var jsonObj? Большое спасибо.

1 ответ

  1. Я отредактировал некоторую часть кода как следить надеюсь это сработает.

    $.each(data, function(key, val){
          var charactersArray = [];
    
          $.each(val.characters, function(ChildKey, ChildVal){
              charactersArray += {
                    name: ChildVal.name,
                    actor: ChildVal.actor
              };
          }); 
    
          var jsonObj = { 
                          name: val.name, 
                          year: val.year, 
                          rating: val.rating, 
                          from: val.from, 
                          kind: val.kind,  
                          length: val.length, 
                          characters: charactersArray
                        };});