我在Laravel控制器中有一个数组,如:
$succeeded[] = array('name' => $name,
'file' => $file
);
...
return $succeeded;
我使用ajax调用来获取$succeeded
,并且我将在js函数中有一个返回字符串组成:
"[{"name":"sor.jpg","file":"399393.jpg"}]"
我的问题是如何从上面的字符串中获取“name”和“file”值?
注意:我没有在控制器中使用任何JSON对象,只返回了数组。但是我想知道使用JSON对象是有利的。
答案 0 :(得分:0)
首先需要使用本机JSON.parse
将响应文本解析为JSON数组,然后可以使用点表示法从解析数组中的对象中提取值。
var respText = "[{\"name\":\"sor.jpg\",\"file\":\"399393.jpg\"}]";
var arr = JSON.parse(respText)[0]; // Careful - this will throw on invalid JSON
var name = arr.name; // "sor.jpg"
var file = arr.file; // "399393.jpg"