web前端陣列塌陷的解決辦法

千鋒武漢發表於2021-04-07

      我們在處理陣列的時候,如果想要刪除乾淨一個陣列按照正常的方式肯定是迴圈遍歷,然後一個一個的將其刪除掉,但在實際操作中會出現刪除不乾淨的情況,這就是陣列塌陷,下面小千介紹幾種解決辦法,記得收藏哦~

      解決陣列塌陷的辦法

      1.設定刪除起始位置為0

1

      想刪除乾淨,需要將陣列的長度先單獨儲存(let length=arr.length),不然陣列的長度會隨著陣列的變化而變化,從而4>3,後面三個刪除不了,例:

2

      2.從後面開始刪除,倒著刪除

3

      由圖可知,陣列元素刪除乾淨,刪除最後的元素即使影響陣列的長度,但是它依舊是刪除最後一個,直到刪除乾淨為止

      3.讓i永遠成為0,永遠刪除的是第一個元素

4

      由圖可知,陣列刪除乾淨,刪除的總是第一個元素,即使陣列塌陷它總會存在一個元素直到刪除乾淨為止。

      閉包中let和var的區別

5

      我們列印的i是一個全域性變數,從undefind可以看出我們宣告瞭一個i但是未定義,而且輸出的結果為5次5,一次性就完成了

6

      由圖可知,輸出報錯,i未定義,我們把console.log(i)關閉

7

      總結:

      let會自動生成一個閉包,而var不能

      let暫時性死區 TDZ

      let不允許重複宣告,同一作用域內只能宣告一次

      let新增的塊級作用域

      for(作用域A){作用域B} 迴圈的應用


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2766807/,如需轉載,請註明出處,否則將追究法律責任。

相關文章