/ / "Неможливо використовувати" в "операторі .." під час отримання відповіді рядка JSON в AJAX jQuery - php, jquery, json, ajax, laravel

"Неможливо використати" в "операторі .." при отриманні JSON-рядкової відповіді в AJAX jQuery - php, jquery, json, ajax, laravel

Я намагаюся створити масив JSON у laravel тапотім намагається отримати його через ajax jquery. Він створює JSON, але при вилученні його з jquery створює проблеми. Я не можу отримати пару ключ-значення там.

Ось код для створення масиву JSON в Laravel (PHP):

foreach ($userIds as &$userId) {
$data[] = json_encode(array("Id"=>$id,"Name"=>$name,"HashId"=>$hashId));
}
return $data;

PS $data показує такий тип відповіді:

[
"{"Id":"111","Name":"abc","HashId":"I1J6EDO"}",
"{"Id":"112","Name":"xyz","HashId":"MDLYW9K"}"
]

ось як я намагаюся викликати ajax req:

$.ajax({
type: "GET",
url: "/url/goes/here",
dataType: "json",
success: function(data) {
$.each(data, function(key, value){
$.each(value, function(key1, value1){
console.log(value1);
});
});
}
});

консоль показує помилку: Uncaught TypeError: Cannot use "in" operator to search for..

після деякого пошуку я зрозумів, що, можливо, відповідь є масивом JSON, а не масивом JSON чи obj (як очікувалося)

Мені потрібна допомога для отримання пари ключ-значення. Я також відкритий, щоб змінити спосіб кодування JSON в laravel. Просьба допомогти, оскільки я новачок для JSON і AJAX

Відповіді:

2 для відповіді № 1

Ви повинні кодувати все після побудови масивів

$data = array();

foreach ($userIds as $userId) {
$data[] = array("Id"=>$id,"Name"=>$name,"HashId"=>$hashId);
}
return json_encode($data);