Problem mit dem Javascript-Loop-Array
阿神
阿神 2017-05-19 10:29:52
0
3
481
var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]
怎么循环出arr 的id?
循环出来后,修改这些id的值了,再怎么存回去?
阿神
阿神

闭关修行中......

Antworte allen(3)
给我你的怀抱

变更后放回去:

var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]

console.log("原始数组:",JSON.stringify(arr)) // 原始数组
arr = arr.map(function(i){
   return Object.assign(i , { id:10086} ) // 你这里想怎么修改,就怎么修改。 
});
console.log("新数组:",JSON.stringify(arr)) // 新数组id已经变了。

遍历数组:

// 第一种
var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]
console.log(arr.map((i) => i.id))

// 第二种
var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]
arr.map((i) => {
    console.log(i.id)
})

// 第三种
var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]
arr.forEach((i) => {
    console.log(i.id)
})

// 第四种
var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]
for(var i=0,l=arr.length;i<l;){
    console.log(arr[i++].id)
}

// 第五种
var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]
for(var i in arr){ console.log(arr[i].id) }
Ty80

var arr =[{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}]
怎么循环出arr 的id?
循环出来后,修改这些id的值了,再怎么存回去?


个人比较推崇 forEach map 这些比较函数式的写法

function arrGenerator(){
    // return 原数组; 
    return [{"id":1,"name":2},{"id":3,"name":4},{"id":3,"name":2}];  
}


var arr = arrGenerator(); 
var res = arr.map(item => item.id * 2); // 这里处理id 把原数组映射成另外个数组 
// => 
// [2, 6, 6]

var arr2 = arrGenerator(); 
var res2 = arr2.map(item => {
    return {
        id: item.id * 2, // 这里处理 id
        name: item.name + '酱❤❤'
    }
}); 

对数组的操作就跟做集合映射一样

尤其是这个。。。 真让人陶醉
arr.map(item => item.id * 2)

曾经蜡笔没有小新

通俗易懂的方法直接循环然后根据你要改的id做判断然后重新赋值

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!