如何从Javascript(Postman)中的JSON对象获取键和值

时间:2018-10-30 04:20:15

标签: javascript json postman key-value

我有一个像这样的JSON对象,我想用邮递员中的键和值访问列表数组元素。

{
    "data": {
        "total": 1,
        "list": [
            {
                "id": 53,
                "name": "Sonu",
                "mobileNo": "6543213456",
                "address": "Greeny Pathway",
                "city": "NewYork",
                "mode": "Weekly",
                "duration": "15",
                "qty": null

            }
        ]
    },
    "success": true,
    "message": ""
}

如何在Javascript中将其作为键和值分开

Key:   id,name,mobileNo,address,city,..
Value: 53,Sonu,6543213456,Greeny Pathway,NewYork,....

5 个答案:

答案 0 :(得分:0)

您可以使用以下代码:

const keys = Object.keys(jsonObject);
const values = Object.values(jsonObject);

但是您的JSON对象很深,您应该将其展平,然后使用keys中的valuesObject将它们分开。

答案 1 :(得分:0)

您可以在数组中分别使用键和值。

var a = {
    "data": {
        "total": 1,
        "list": [
            {
                "id": 53,
                "name": "Sonu",
                "mobileNo": "6543213456",
                "address": "Greeny Pathway",
                "city": "NewYork",
                "mode": "Weekly",
                "duration": "15",
                "qty": null,

            }
        ]
    },
    "success": true,
    "message": ""
}

var keyval = Object.keys(a.data.list[0])
console.log(keyval)
var values = Object.values(a.data.list[0])
console.log(values)

答案 2 :(得分:0)

JSON对象是键值对,您无法根据需要获取对象形式的键和值,但是可以从此代码中以数组的形式获取键和值

var key = []
var values = []
list.map(function(l){  keys = Object.getOwnPropertyNames(l); 
keys.map(function(key) {values.push(l[key]);})})

答案 3 :(得分:0)

首先从第"qty": null,行中删除逗号,否则将导致json解析错误。

var resultJSON = `{
    "data": {
        "total": 1,
        "list": [
            {
                "id": 53,
                "name": "Sonu",
                "mobileNo": "6543213456",
                "address": "Greeny Pathway",
                "city": "NewYork",
                "mode": "Weekly",
                "duration": "15",
                "qty": null

            }
        ]
    },
    "success": true,
    "message": ""
}`;


var result = $.parseJSON(resultJSON);

var myList = result.data.list[0];

$.each(myList, function(k, v) {
    //display the key and value pair
    alert(k + ' is ' + v);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

答案 4 :(得分:0)

最后这对我有用!(用邮递员脚本)

var resdata = JSON.parse(responseBody);
console.log(resdata);

key = Object.keys(resdata.data.list[0]);
console.log(key);

value =Object.keys(resdata.data.list[0]);
console.log(value);
相关问题