Вывести ключ и значение массива each

var json = [ 
    "1-1-1-1-1":{
        "a":{
            "Hi-Gear": ["HG2222", "HG2205"],
            "FENOM": ["FN338N"]
        }
    },
];


$.each(json,function(index,value){
  console.log('Ключ: ' + index + '; Значение: ' + value);
});

Как в console.log правильно вывести ключ FENOM и его значение FN338N ?


Ответы (1 шт):

Автор решения: OPTIMUS PRIME

Цикл for( let key in object ) — в нем переменная key собственно ключ, а значение этого ключа можно получать через object[key]

var json = {
  "1-1-1-1-1": {
    "a": {
      "Hi-Gear": ["HG2222", "HG2205"],
      "FENOM": ["FN338N"]
    }
  },
  "2-2-2-2-2": {
    "a": {
      "Hi-Gear": ["HG2222", "HG2205"],
      "FENOM": ["F12345", "F54321"]
    }
  },
};

for( var key in json ){
  console.log(
    'Ключ: ' + key + '; Путь: json["' + key + '"].a.FENOM; Значение: ' + json[key].a.FENOM
  );
}

Здесь выводимые массивы автоматически превращаются в строки из-за соединения со строками. Но по отдельности json[key].a.FENOM можно использовать как обычный массив. Или дописать JSON.stringify( json[key].a.FENOM ) если нужно его выводить именно со скобками.

→ Ссылка