[{
id: '1',
name: '小王',
desc: '小王描述'
}, {
id: '2',
name: '小强',
desc: '小强描述'
}, {
id: '6',
name: '小红',
desc: '小红描述'
}, {
id: '9',
name: '小东',
desc: '小东描述'
}]
這是後台傳回來的數據,怎麼能用for
循環把裡面的id
變成數字呀?不懂怎麼寫,好尷尬
过去多啦不再A梦2017-06-26 10:57:17
關鍵點是把字串轉成數值吧,parseInt
或Number
都可以轉。或者說直接讓後台傳數值類型。疑問:這是從後端取得的數據,一般都是要渲染到頁面上的,為什麼還要轉成數值呢?
天蓬老师2017-06-26 10:57:17
這樣
function change(items){
items= items|| [];
for( var i = 0,item; item = items[i++]; ){
item.id *= 1;
}
return items;
}
var result = change(/*你需要弄的*/);
代言2017-06-26 10:57:17
var result = arr.map(item => {item.id = parseInt(item.id); return item;});
不過因為物件引用型別, 其實原數組arr裡的id也為數值了
学习ing2017-06-26 10:57:17
先說思路:
1、先遍歷數組
2、遍歷對象
3、增加屬性鍵值對,刪除舊的鍵值對
下面程式碼:
var jsonData = [{
id: '1',
name: '小王',
desc: '小王描述'
}, {
id: '2',
name: '小强',
desc: '小强描述'
}, {
id: '6',
name: '小红',
desc: '小红描述'
}, {
id: '9',
name: '小东',
desc: '小东描述'
}];
var i = 0;
for (; i < jsonData.length; i++) {
for (var name in jsonData[i]) {
if (name === 'id') {
jsonData[i][i] = jsonData[i][name];
delete jsonData[i][name];
}
}
}