Maison > Questions et réponses > le corps du texte
[{
id: '1',
name: '小王',
desc: '小王描述'
}, {
id: '2',
name: '小强',
desc: '小强描述'
}, {
id: '6',
name: '小红',
desc: '小红描述'
}, {
id: '9',
name: '小东',
desc: '小东描述'
}]
Ce sont les données renvoyées depuis l'arrière-plan. Comment puis-je utiliser for
循环把里面的id
pour les transformer en chiffres ? Je ne sais pas comment l'écrire, c'est tellement gênant
过去多啦不再A梦2017-06-26 10:57:17
Le point clé est de convertir la chaîne en valeur numérique, parseInt
或者Number
vous pouvez la convertir. Ou laissez l'arrière-plan transmettre directement le type numérique. Question : Il s'agit de données obtenues à partir du backend et qui sont généralement restituées sur la page. Pourquoi doivent-elles être converties en valeur numérique ?
天蓬老师2017-06-26 10:57:17
Comme ça
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
//方法一
for(var i=0,len=arr.length;i<len;i++){
arr[i].id=parseInt(arr[i].id)
}
//方法二
arr.map(function(item){return {desc:item.desc,id:parseInt(item.id),name:item.name}})
//es6写法
arr.map(item=>{{desc:item.desc,id:parseInt(item.id),name:item.name}})
代言2017-06-26 10:57:17
var result = arr.map(item => {item.id = parseInt(item.id); return item;});
Mais en raison du type de référence d'objet, l'identifiant dans le tableau d'origine arr est également une valeur numérique
迷茫2017-06-26 10:57:17
Utilisez simplement parseInt pour transférer directement et tout ira bien
学习ing2017-06-26 10:57:17
Parlons d'abord de l'idée :
1. Parcourez d'abord le tableau
2 Parcourez l'objet
3 Ajoutez des paires clé-valeur d'attribut et supprimez les anciennes paires clé-valeur
Code ci-dessous :
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];
}
}
}