Javascript 遍历表行,只选择特定的列名和值
我是个初学者,不知道如何从JSON获取数据。我有以下JSON结构Javascript 遍历表行,只选择特定的列名和值,javascript,json,Javascript,Json,我是个初学者,不知道如何从JSON获取数据。我有以下JSON结构 { "title": "Delicate style of embroidery lawn dress", "field": [ { "row1": { "key": "free_homedelivery", "value": "yes" } }, { "row2": { "key": "
{
"title": "Delicate style of embroidery lawn dress",
"field": [
{
"row1": {
"key": "free_homedelivery",
"value": "yes"
}
},
{
"row2": {
"key": "_price",
"value": "60"
}
},
{
"row3": {
"key": "_regular_price",
"value": "60"
}
},
{
"row4": {
"key": "_stock_status",
"value": "instock"
}
}
]
}
我试过了,但控制台显示undefined
for(var i =0 ;i < s.length; i++)
{
console.log('key ' + s.field['row'+i].key);
}
for(变量i=0;i
这似乎无法获取值
这里是
您在json中的对象都有点不同(属性名为row1、row2等),因此您必须执行以下操作:
var json = {
"title": "Delicate style of embroidery lawn dress",
"field": [{
"row1": {
"key": "free_homedelivery",
"value": "yes"
}
}, {
"row2": {
"key": "_price",
"value": "60"
}
}, {
"row3": {
"key": "_regular_price",
"value": "60"
}
}, {
"row4": {
"key": "_stock_status",
"value": "instock"
}
}]
}
for (i = 0; i < json.field.length ; i++){
var item = json.field[i];
var key = item["row" + (i + 1)].key;
alert(key);
}
var json={
“标题”:“精致风格的刺绣草坪裙”,
“字段”:[{
“第1行”:{
“密钥”:“免费送货上门”,
“值”:“是”
}
}, {
“第2行”:{
“密钥”:“价格”,
“值”:“60”
}
}, {
“第3行”:{
“键”:“正常价格”,
“值”:“60”
}
}, {
“第4行”:{
“密钥”:“库存状态”,
“值”:“instock”
}
}]
}
对于(i=0;i
问题
s
?-假设s
是您粘贴的jsons.field
上,但使用s.length
字段
引用为数组,但尝试访问数组中对象的属性作为数组的属性0
开始,而行
名称从行1开始
var numFields=s.field.length;//计算长度的良好实践
对于(变量i=0;i
脚注-JSON太复杂了,它可以像下面这样简单
var s = {
"title": "Delicate style of embroidery lawn dress",
"field": [
{
"key": "free_homedelivery",
"value": "yes"
},
{
"key": "_price",
"value": "60"
}
]
};
// Updated loop
var numFields = s.field.length; // Good practice to keep length calculated
for(var i = 0; i < numFields; i++){
console.log('key ' + s.field[i].key);
}
var s={
“标题”:“精致风格的刺绣草坪裙”,
“字段”:[
{
“密钥”:“免费送货上门”,
“值”:“是”
},
{
“密钥”:“价格”,
“值”:“60”
}
]
};
//更新循环
var numFields=s.field.length;//计算长度的良好实践
对于(变量i=0;i
希望这有帮助
小提琴-控制台不返回任何内容。请检查此处。您可能没有将JSON分配给
var s
,这里是生成JSON的URL,我正在使用$.ajax({});为了获取JSONI,尝试了fiddle代码,但控制台仍然显示“UncaughtTypeError:无法读取undefined”的属性“key”,您需要将响应放入变量中,然后使用上面的循环。不管怎么说,你是在什么浏览器上试用的?看看小提琴,没有错误。您是否忘记声明变量(我将其命名为json)。您已将json直接存储在变量中。在我的帖子里查一查,你就会知道我的代码了。
var s = {
"title": "Delicate style of embroidery lawn dress",
"field": [
{
"key": "free_homedelivery",
"value": "yes"
},
{
"key": "_price",
"value": "60"
}
]
};
// Updated loop
var numFields = s.field.length; // Good practice to keep length calculated
for(var i = 0; i < numFields; i++){
console.log('key ' + s.field[i].key);
}