迭代JSON对象并将元素打印到屏幕上的最佳方式是什么
What is the best way to iterate through a JSON object and print elements to the screen?
我只是想学习操作JSON数据并将其显示在屏幕上的最有效方法。我是个笨蛋,所以如果可以的话,尽量把你的答案分解清楚。欢迎使用Javascript和jQuery解决方案。类似这样的东西:
肉
- 纽约大道20.00美元
- 罗纹鞋$19.00
蔬菜
- Kale$4.00
- Sunchokes$3.20
这是JSON对象(可以更有效地重写吗?):
var foods = {
"category":{
"Meats":[
{
"product":"NY Strip",
"price":20.00,
"cost":14.00,
"total sold": 3
},
{
"product":"Ribeye",
"price":20.00,
"cost":14.00,
"total sold": 6
}
],
"Vegetables":[
{
"product":"Kale",
"price":4.00,
"cost":2.00,
"total sold": 10
},
{
"product":"Sunchokes",
"price":3.20,
"cost":1.00,
"total sold": 5
}
]
}
}
这是我的尝试:(希望我知道一种将类别标题合并到循环中的方法,而不是对它们进行硬编码。)
<h3>Meats</h3>
<script>
for(key in foods.category.Meats){
document.write("<li>" + foods.category.Meats[key].product + " $" + foods.category.Meats[key].price + "</li>");
}
</script>
<h3>Vegetables</h3>
<script>
for(key in foods.category.Vegetables){
document.write("<li>" + foods.category.Vegetables[key].product + " $" + foods.category.Vegetables[key].price + "</li>");
}
</script>
这将遍历整个对象。
var category = foods.category
for(var cat in category) {
if(category.hasOwnProperty(cat)) {
category[cat].forEach(function(item) {
console.log(item);
// Do stuff here
});
}
}
这里有另一种方法:
Object.keys(foods.category).forEach(function(category) {
foods.category[category].forEach(function(item) {
console.log('do stuff with', item);
});
});
啊,谢谢大家。
var category = foods.category
for(var key in category) {
if(category.hasOwnProperty(key)) {
category[key].forEach(function(item) {
if(document.getElementById(key) === null){
document.write("<h4" + " id='" + key + "'" + ">" + key + "</h4>")
}
document.write("<li>" + item.product + "</li>");
});
}
}
相关文章:
- 如何将屏幕分辨率乘以 80%,然后在代码中使用
- 在localhost Dev Box上测试JSONP请求的最佳方式
- 在不打开聊天屏幕的情况下制作Zopim-ding代理
- 有条件更新d3.js力图中节点的最佳方法
- 使用图像数组列表的simplegallary.js显示适合桌面屏幕的图像
- 为react组件传递道具的最佳方式
- 与运行长作业(javascript,node.js)的第三方API同步的最佳实践
- 让Webpack管理Quirky AMD定义的最佳方式
- 导航栏没有调整到浏览器屏幕的大小
- 调整屏幕大小后不显示子菜单
- 如何在p5.js中管理多智力竞赛游戏的多个屏幕
- 在网站上显示.mov作为加载屏幕的最佳方式
- 迭代JSON对象并将元素打印到屏幕上的最佳方式是什么
- 在构建敲除js绑定时,隐藏屏幕的最佳方式是什么
- 隐藏屏幕外按钮的最佳方式
- 检测用户的最佳做法是什么'屏幕宽度
- 最佳实践:在a元素和屏幕阅读器中加密电子邮件地址
- 在平板电脑上检测屏幕方向的最佳全局方法是什么?
- 成功登录后从服务器查看菜单屏幕的最佳方式
- 使用JavaScript检测手机屏幕宽度的最佳方法是什么?