很多與陣列有關的任務聽起來很簡單,但實際情況並不總是如此,而開發人員在很多時候也用不到他。最近我碰到了這樣一個需求: 將一個元素插入到現有陣列的特定索引處。聽起來很容易和常見,但需要一點時間來研究它。
1 2 3 4 5 6 7 |
// 原來的陣列 var array = ["one", "two", "four"]; // splice(position, numberOfItemsToRemove, item) // 拼接函式(索引位置, 要刪除元素的數量, 元素) array.splice(2, 0, "three"); array; // 現在陣列是這個樣子 ["one", "two", "three", "four"] |
如果你對擴充套件原生 JavaScript 不反感,那麼可以將這個方法新增到陣列原型(Array prototype)中:
1 2 3 |
Array.prototype.insert = function (index, item) { this.splice(index, 0, item); }; |
此時,可以這樣呼叫:
1 2 3 |
var nums = ["one", "two", "four"]; nums.insert(2, 'three'); // 注意陣列索引, [0,1,2..] array // ["one", "two", "three", "four"] |
我對陣列也進行過一些其他的修改,可能你已經看過了:
- Remove an Item From an Array : 從陣列中刪除元素
- Clone Arrays : 陣列克隆
- Empty Arrays : 空陣列
- Sort Arrays : 陣列排序
Arrays 非常的有用—— JavaScript中處理某些任務還是比較繁瑣…… 必須編寫比實際需要的更多的程式碼(code-heavy)。為了更方便,請收藏本文,或者將這些片段儲存到你的工具箱吧!