簡體   English   中英

將URL中的JSON數據解析為數組並打印

[英]Parse JSON data from URL to Array and Print

我有來自某些URL的 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數據解析為數組,並且需要產品的全名,品牌和MRP

怎么做請幫忙?

在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);

假設您有類似var url = http:// localhost?jsonData = [...]的 URL

在javascript中,您可以獲得var jsonData = url.split(“ =”)[1];

但這是字符串類型。 要將其解析為JSON,請寫入jsonData = JSON.parse(jsonData)

現在獲取要顯示的字符串數組,var printData = jsonData.map(function(jsonObj){return jsonobj.title + jsonobj.brand.name + jsonObj.price;})

現在,您可以使用下面的代碼console.log(JSON.stringify(printData));在控制台中看到printData。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM