购物车等相关数据处理一

拟墨画扇 提交于 2020-01-22 08:47:00

<script type="text/javascript">

//缓存的数据

var selected = [

{ id: 09, name: '苹果', price: 3.5,checked:true },

{ id: 10, name: '香蕉', price: 4.1,checked:true},

{ id: 11, name: '橘子', price: 4.6,checked:true}

]

 

//新数据[从后台获取的数据]

var product = [

{ id: 09, name: '苹果', price: 3.5,checked:false },

{ id: 10, name: '香蕉', price: 4.1, checked:false},

{ id: 11, name: '橘子', price: 4.6, checked:false},

{ id: 12, name: '葡萄', price: 8.6, checked:false},

{ id: 13, name: '猕猴桃', price: 7.6, checked:false}

]

 

//.进入当前页面拿缓存数据和新数据(从后台获取的数据)进行对比,然后进行对比渲染

function arrToJson(arr,obj={}){

arr.forEach((item)=>{

// console.log('item');

// console.log(item);

obj[item.id] = item;

 

})

console.log('obj');

console.log(obj);

return obj;

}


 

select = arrToJson(selected);

// console.log('selected已经 ')

// console.log(selected)

// arrToJson(selected);

 

var i=0;

 

while (i<product.length){//此处可以用for循环,但是推荐使用while,因为while比for效率高

if(select[product[i].id]){

product[i].checked = true;

}

i++

}

 

while (i < product.length) {

if(select[product[i].id]){

product[i].checked = true;

}

i++

}

 

//product 处理完可以用于渲染的数据

console.log("方法二",product);



 

</script>

 

参考文档 :https://www.cnblogs.com/sdcs/p/9661856.html

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!