js遍历json的key和value

原生js遍历json对象

遍历json对象

无规律:

<script>
var json = [{dd:'SB',AA:'东东',re1:123},{cccc:'dd',lk:'1qw'}];
for(var i=0,l=json.length;i<l;i++){
for(var key in json[i]){
alert(key+':'+json[i][key]);
}
}
</script>

有规律:

packJson = [

{"name":"nikita", "password":"1111"},

{"name":"tony", "password":"2222"}

];

for(var p in packJson){//遍历json数组时,这么写p为索引,0,1

   alert(packJson[p].name + " " + packJson[p].password);

}

也可以用这个:

for(var i = 0; i < packJson.length; i++){

   alert(packJson[i].name + " " + packJson[i].password);

}

遍历json对象

myJson = {"name":"caibaojian", "password":"1111"};

for(var p in myJson){//遍历json对象的每个key/value对,p为key

   alert(p + " " + myJson[p]);

}
有如下 json对象:
var obj ={"name":"冯娟","password":"123456","department":"技术部","sex":"女","old":30};
遍历方法:
for(var p in obj){
str = str+obj[p]+’,';
return str;
}
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 可以使用Java中的JSONArray类来遍历JSON数组,并使用JSONObject类来获取每个元素的键和值。 示例代码如下: ``` JSONArray jsonArray = new JSONArray("[{\"name\":\"张三\",\"age\":20},{\"name\":\"李四\",\"age\":25}]"); for (int i = ; i < jsonArray.length(); i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String name = jsonObject.getString("name"); int age = jsonObject.getInt("age"); System.out.println("name: " + name + ", age: " + age); } ``` 以上代码将输出: ``` name: 张三, age: 20 name: 李四, age: 25 ``` 其中,`jsonArray.getJSONObject(i)`方法用于获取数组中的第i个元素,返回一个JSONObject对象。然后,可以使用`getString()`和`getInt()`方法来获取该元素的键和值。 ### 回答2: 在进行jsonarray的遍历时,获取其keyvalue可以通过以下步骤实现: 1. 首先,需要将jsonarray转换为java中的JSONArray对象,例如: JSONArray jsonArray = new JSONArray(jsonArrayString); 其中,jsonArrayString是包含jsonarray的字符串。 2. 然后,可以使用for循环遍历jsonarray,例如: for (int i = 0; i < jsonArray.length(); i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); Iterator<String> keys = jsonObject.keys(); while (keys.hasNext()) { String key = keys.next(); String value = jsonObject.getString(key); System.out.println("key: " + key + ", value: " + value); } } 在上述代码中,首先获取jsonarray中的第i个元素,然后将其转换为java中的JSONObject对象。接着,使用Iterator遍历JSONObject对象的所有key,并通过getString方法获取对应的value。最后,通过输出语句输出keyvalue的值。 需要注意的是,上述代码中的jsonArrayString需要保证是合法的jsonarray字符串,否则可能会抛出异常。另外,对于嵌套的jsonarray或jsonobject,需要使用递归的方式来进行遍历获取keyvalue。 ### 回答3: 在Java中,我们可以使用JsonArray类来表示一个JSON数组对象JsonArray类可以通过以下方式创建: JsonArray jsonArr = new JsonArray(); 然后我们可以使用add()方法向JsonArray对象中添加元素,该方法接受JsonElement类型的参数,其中JsonElement类是Json库中的一个基本类,用于表示不同类型的JSON元素,如JsonPrimitive、JsonObject等。下面是一个例子: jsonArr.add(new JsonPrimitive("string")); jsonArr.add(new JsonPrimitive(123)); jsonArr.add(new JsonObject()); 我们可以使用JsonArray对象的size()方法获取数组中元素的数量,使用get(int index)方法获取索引为index的元素,例如: System.out.println(jsonArr.size()); // 输出: 3 System.out.println(jsonArr.get(0)); // 输出: "string" 遍历JsonArray对象,获取其中的元素值以及对应的key值,可以通过以下方式实现: for (int i = 0; i < jsonArr.size(); i++) { JsonElement element = jsonArr.get(i); if (element.isJsonPrimitive()) { JsonPrimitive primitive = element.getAsJsonPrimitive(); System.out.println("key: " + i + ", value: " + primitive.getAsString()); } else if (element.isJsonObject()) { JsonObject object = element.getAsJsonObject(); System.out.println("key: " + i + ", value: " + object.toString()); } else if (element.isJsonArray()) { JsonArray array = element.getAsJsonArray(); System.out.println("key: " + i + ", value: " + array.toString()); } else if (element.isJsonNull()) { System.out.println("key: " + i + ", value: null"); } else { throw new IllegalStateException("Unknown JSON element type: " + element.getClass()); } } 在上述代码中,我们使用isJsonPrimitive()、isJsonObject()、isJsonArray()和isJsonNull()方法来判断当前元素的类型,并使用getAsJsonPrimitive()、getAsJsonObject()、getAsJsonArray()和getAsString()等方法获取元素的值或者key值。如果当前元素的类型未知,则抛出一个异常。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值