JSON.stringify()
方法将 JavaScript 对象转换为 JSON 字符串。在这段代码中,通过调用 JSON.stringify(this.cartList)
,将数组对象 this.cartList
转换为 JSON 字符串。
JSON.parse()
方法将 JSON 字符串解析为 JavaScript 对象。通过调用 JSON.parse(JSON.stringify(this.cartList))
,将先前转换为 JSON 字符串的数组对象再转换回 JavaScript 对象。
最终的效果是,通过这种方式创建了原数组对象的深拷贝,也就是在内存中创建了一个完全独立的新数组对象。这样做的目的通常是为了避免对原始数组对象的修改对拷贝后的数组对象产生影响,保持数据的独立性。
<script>
new Vue({
el: '#app',
data: {
cartList:[],
goodsList:[]
},
mounted() {
this.goodsList = GoodsArr;
},
methods:{
addToCart(goods){
// TODO:修改当前函数,实现购物车加入商品需求
goods.num = 1;
this.cartList.push(goods);
this.cartList = JSON.parse(JSON.stringify(this.cartList));
},
removeGoods(goods){
// TODO:补全代码实现需求
}
}
});
</script>