使用splice函數對數組中的元素進行刪除時的注意事項
刪除值為c的元素:
<script> var arr = new Array(); arr[0] = 'a'; arr[1] = 'b'; arr[2] = 'c'; arr[3] = 'c'; arr[4] = 'e'; for(var i=0; i<arr.length; i++){ if(arr[i] == 'c'){ arr.splice(i,1); i=i-1; // 必須對i減去1,否則後面的一個元素會被跳過去 } } </script>
注意:如果用for(i in arr)的話,後面的一個元素始終會跳過去
<script> var arr = new Array(); arr[0] = 'a'; arr[1] = 'b'; arr[2] = 'c'; arr[3] = 'c'; arr[4] = 'e'; for(i in arr){ if(arr[i] == 'c'){ arr.splice(i,1); i=i-1; // 這行代碼無效,i 的值並不會改變 } alert(arr.length); } </script>
以上這篇淺談使用splice函數對數組中的元素進行刪除時的注意事項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。