JS-陣列基礎知識3
今天主要看下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()進行頭部刪除,這樣陣列為緊密型陣列,每進行一次刪除,陣列長度減一
不足之處,歡迎大佬指正!!!
相關文章
- 【Java基礎知識】Java陣列與集合Java陣列
- 【基礎知識】索引--點陣圖索引索引
- JS-陣列方法總結JS陣列
- corejava基礎知識(3)-泛型Java泛型
- c語言基礎知識3C語言
- JavaSE基礎語法3-陣列Java陣列
- 林大媽的JavaScript基礎知識(三):JavaScript程式設計(4)陣列JavaScript程式設計陣列
- [WebGL入門]五,矩陣的基礎知識Web矩陣
- RxJava 知識梳理(3) RxJava2 基礎知識小結RxJava
- 基礎知識
- JavaSE基礎:陣列Java陣列
- [shell基礎]——陣列陣列
- 陣列基礎使用陣列
- Python 必備面試基礎知識-3Python面試
- AI 基礎知識AI
- Webpack 基礎知識Web
- Dart基礎知識Dart
- RabbitMQ基礎知識MQ
- webpack基礎知識Web
- javascript基礎知識JavaScript
- ThinkPHP基礎知識PHP
- Laravel基礎知識Laravel
- Redis基礎知識Redis
- Docker基礎知識Docker
- 程式基礎知識
- Envoy基礎知識
- DockerFile基礎知識Docker
- Nginx基礎知識Nginx
- CSS基礎知識CSS
- Java基礎知識Java
- PRML 基礎知識
- BGP基礎知識
- PHP基礎知識PHP
- React基礎知識React
- httpclient基礎知識HTTPclient
- HBase基礎知識
- Jquery基礎知識jQuery
- js基礎知識JS