JS-数组基础知识3

此文转载自:https://blog.csdn.net/weixin_43254169/article/details/110250437#commentBox

今天主要看下pop(),unshift(),shift().push(),这几个都属于数组的方法分别为,尾部删除/头部添加/头部删除/尾部添加
在这里插入图片描述
2.如何清空对象型数组
对于清空数组,大家就想到把数组的length设置为0不就ok了,这个当然可以
例如:var arr=[1,2,3,4]; arr.length=0;
但是如果我们清空的是如下类型的数组呢?
var data = [
{id:1001,icon:‘img/1.png’,name:‘餐饮0’,num:1,price:10},
{id:1002,icon:‘img/2.png’,name:‘餐饮1’,num:1,price:20},
{id:1003,icon:‘img/3.png’,name:‘餐饮2’,num:12,price:30},
{id:1004,icon:‘img/4.png’,name:‘餐饮3’,num:1,price:40},
{id:1005,icon:‘img/5.png’,name:‘餐饮4’,num:1,price:50},
{id:1006,icon:‘img/6.png’,name:‘餐饮5’,num:1,price:60},
{id:1007,icon:‘img/7.png’,name:‘餐饮6’,num:1,price:70},
{id:1008,icon:‘img/8.png’,name:‘餐饮7’,num:1,price:80},
{id:1009,icon:‘img/9.png’,name:‘餐饮8’,num:1,price:90},
{id:10010,icon:‘img/10.png’,name:‘餐饮9’,num:1,price:100},
{id:10011,icon:‘img/11.png’,name:‘餐饮10’,num:1,price:110},
]
当然,用data.length=0;数组也可以清空;//data.length=0;//[]
但是数组清空,对象处于游离状态,和数组还有引用关系,没有把引用地址赋值为null,会导致内存泄漏
于是,我们就采用了以下方法,发现数组里的数组是没有了,但是数组的长度依然不变,没有为0,因此,失败了在这里插入图片描述
最后,采用以下方法,用shift()进行头部删除,这样数组为紧密型数组,每进行一次删除,数组长度减一
在这里插入图片描述

不足之处,欢迎大佬指正!!!

   

更多内容详见微信公众号:Python测试和开发

Python测试和开发

原文地址:https://www.cnblogs.com/phyger/p/14056011.html