我想映射我的對象的一部分,但我有一些未定義的變量。下面是轉儲到JSON我的對象(數據,這是一個對象數組):使用jquery映射對象字段
[
{
"key": "Sam",
"values": [
{
"label": "Name",
"value": 38
},
{
"label": "Surname",
"value": 38
},
{
"label": "Phone",
"value": 36
},
{
"label": "Text",
"value": 38
},
{
"label": "Website",
"value": 28
},
{
"label": "Rating",
"value": 0
},
{
"label": "Factor",
"value": 2
},
{
"label": "Cases",
"value": 2
},
{
"label": "Hours",
"value": 5
}
],
"color": "#E05353"
},
{
"key": "Niki",
"values": [
{
"label": "Name",
"value": 38
},
{
"label": "Surname",
"value": 38
},
{
"label": "Phone",
"value": 37
},
{
"label": "Text",
"value": 38
},
{
"label": "Website",
"value": 4
},
{
"label": "Rating",
"value": 0
},
{
"label": "Factor",
"value": 1
},
{
"label": "Cases",
"value": 0
},
{
"label": "Hours",
"value": 0
}
],
"color": "#293F90"
},
{
"key": "Dan",
"values": [
{
"label": "Name",
"value": 21
},
{
"label": "Surname",
"value": 21
},
{
"label": "Phone",
"value": 6
},
{
"label": "Text",
"value": 21
},
{
"label": "Website",
"value": 2
},
{
"label": "Rating",
"value": 1
},
{
"label": "Factor",
"value": 3
},
{
"label": "Cases",
"value": 5
},
{
"label": "Hours",
"value": 1
}
],
"color": "#32B6E8"
},
{
"key": "Jake",
"values": [
{
"label": "Name",
"value": 58
},
{
"label": "Surname",
"value": 58
},
{
"label": "Phone",
"value": 56
},
{
"label": "Text",
"value": 58
},
{
"label": "Website",
"value": 30
},
{
"label": "Rating",
"value": 1
},
{
"label": "Factor",
"value": 2
},
{
"label": "Cases",
"value": 1
},
{
"label": "Hours",
"value": 2
}
],
"color": "#77B242"
},
{
"key": "Steve",
"values": [
{
"label": "Name",
"value": 100
},
{
"label": "Surname",
"value": 100
},
{
"label": "Phone",
"value": 100
},
{
"label": "Text",
"value": 100
},
{
"label": "Website",
"value": 33
},
{
"label": "Rating",
"value": 2
},
{
"label": "Factor",
"value": 2
},
{
"label": "Cases",
"value": 0
},
{
"label": "Hours",
"value": 17
}
],
"color": "#FFA614"
}
]
我需要做的是通過100每個鍵的值乘值。以下是我的了:
$.each(data, function(i,val){
$.each(val.values, function(i,v){
v.value = (v.value * 100);
});
});
資深開發商告訴我,我可以更好地與$.map
,怎麼辦呢?
在這裏我真的沒有看到使用'$ .map'有什麼優勢。 '$ .each'非常好。你可以用'v.value * = 100;'縮短它的一小部分。 *編輯:*這是假設你想保持這種結構。 –
你檢查了什麼'val'實際上是?你在看到'console.log'時看到了什麼? – rednaw
'arr = $ .map(arr,function(v,i){ \t return v.value =(v.value * 100); });'當使用映射器時..但是undefines不是從使用的foreach。 –