Json 遍历记录字符,而不是键值
Json traverse logs characters and not key values
我正在尝试使用以下代码遍历 JSON 对象:
traverse(json, process);
//called with every property and it's value
function process(key, value) {
console.log(key + " : " + value);
}
function traverse(o, func) {
for (var i in o) {
func.apply(this, [i, o[i]]);
if (o[i] !== null && typeof (o[i]) == "object") {
//going on step down in the object tree!!
traverse(o[i], func);
}
}
}
下面是 JSON 对象:
{"breakfast_menu":{"food":[{"name":["Belgian Waffles"],"price":["$5.95"],"description":["Two of our famous Belgian Waffles with plenty of real maple syrup"],"calories":["650"]},{"name":["Strawberry Belgian Waffles"],"price":["$7.95"],"description":["Light Belgian waffles covered with strawberries and whipped cream"],"calories":["900"]},{"name":["Berry-Berry Belgian Waffles"],"price":["$8.95"],"description":["Light Belgian waffles covered with an assortment of fresh berries and whipped cream"],"calories":["900"]},{"name":["French Toast"],"price":["$4.50"],"description":["Thick slices made from our homemade sourdough bread"],"calories":["600"]},{"name":[ "Homestyle Breakfast"],"price":["$6.95"],"description":["Two eggs, bacon or sausage, toast, and our ever-popular hash browns"],"calories":["950"]}]}}
它为我打印的结果如下:
> 748 : s
> 749 : t
> 750 : ,
> 751 :
> 752 : a
> 753 : n
> 754 : d
> 755 :
> 756 : o
> 757 : u
> 758 : r
> 759 :
> 760 : e
> 761 : v
> 762 : e
> 763 : r
> 764 : -
> 765 : p
我的预期结果是打印值,例如
> key : value
问题是我的JSON是一个字符串而不是一个对象。以下是解决它的代码:
JSON.parse(jsonString);
相关文章:
- 循环遍历以数组为值的Javascript对象
- 遍历 JSON 对象并检查 URL 是否以某个值结尾
- JQuery 遍历当前 SELECT 值
- 遍历D3中所有数据点之间的所有值
- JavaScript元素遍历返回的值超出预期
- 在 angularjs 中,当我没有键值时,如何遍历 JSON 以填充值
- Javascript:遍历对象数组以查找键值对并将它们呈现在表中 td
- Jade 循环遍历键/值多次返回相同的值
- 使用正则表达式键匹配 Javascript 循环遍历对象获取值
- 循环遍历 JSON,在对象之间插入键/值
- 遍历对象数组的 json 对象,信任一个键的值作为 Angular 中的 HTML
- 循环遍历对象并将键和值推入数组
- 遍历Hogan.js中的键/值
- 如何遍历所有键&嵌套对象的值
- 递归遍历javascript对象并用键替换值
- 循环遍历对象以获取键值并生成'x'元素的数量
- nodejs-redis循环遍历每个散列键值
- Json 遍历记录字符,而不是键值
- 遍历其键值为数组(其值为对象)的对象
- Javascript:用一个不规则的键循环遍历对象中的所有记录