关于在获取数据后对数据用forEach进行处理的认知

arr.forEach(function(item,index,arr){})的用法:

  • 参数:item数组中的当前项, index当前项的索引, arr原始数组;
  • 数组中有几项,那么传递进去的匿名回调函数就需要执行几次;
  • 理论上这个方法是没有返回值的,仅仅是遍历数组中的每一项并执行其他的方法,不对原来数组进行修改;但是可以自己通过数组的索引来修改原来的数组;

看下下面的例子:

$.ajax({
   url: '/myCart.do',
   type: 'post',
   dataType: 'json'
}).done(function(res) {

res.forEach(function(item, index, arr) {
arr[index].totalPrice = item.cPrice * item.cQuantity;

self.myCartList = res//这里是绑定数据到一个地方
})

这是从后台获取价格和数量后,通过在前端对数据作处理进行计算总价的操作,执行上面的代码后,self.myCartList里面会多一个totalPrice的字段

这里需要和jquery的each有所区分,因为jq的第一个参数代表索引,第二个代表数组项

 

posted @ 2017-04-09 18:56  十nian  阅读(1759)  评论(0编辑  收藏  举报