我的这个JSON数据来自某个网址: 我必须解析这个JSON数据并打印所有产品的品牌名称,MRP和名称。
[
{
"name": "Message",
"data": []
},
{
"name": "ProductGrid",
"data": {
"title": "Results for tea",
"count": 244,
"products": [
{
"id": "2313",
"name": "Clear Green Tea Bags",
"full_name": "Lipton Clear Green Tea Bags",
"images": [
"200.png"
],
"brand": {
"id": "18",
"name": "Lipton",
"url": "/lipton-b.php"
},
"category": {
"id": "86",
"name": "Tea Bag",
"url": "tea-bag-c.php",
"food_coupons_allowed": "1",
"image_url": "hea-bag.jpeg",
"parent_category": {
"id": "13",
"name": "Tea & Coffee"
}
},
"properties": [],
"is_new": false,
"
]'
我想使用JavaScript或Java将此JSON数据解析为数组 我需要 full_name,brand& MRP 的产品。
怎么做请帮忙?
答案 0 :(得分:0)
在javascript中你可以这样做:
var jsonText = '[{"name":"Message", "data": [] ... // jsonText is the string with the json
var obj = JSON.parse(jsonText);
在java中,您可以将json表示为Map。
String json = ...
ObjectMapper mapper = new ObjectMapper();
Map<String,Object> map = mapper.readValue(json, Map.class);
答案 1 :(得分:0)
假设你有像这样的网址 var url = http://localhost?jsonData=[...]
在javascript中,你可以得到jsonData之类的 var jsonData = url.split(&#34; =&#34;)[1];
但它是字符串类型。要将其解析为JSON写入 jsonData = JSON.parse(jsonData)
现在要获取要显示的字符串数组, var printData = jsonData.map(function(jsonObj){ return jsonobj.title + jsonobj.brand.name + jsonObj.price; })
现在,您可以使用以下代码在控制台中查看printData 的console.log(JSON.stringify(printData));