在js中數組非常經常用到,熟練掌握數組的方法能夠大大的提高對自己的變成效率,最近解除php,學得非常皮毛,遇到一個問題,自己一直陷入foreach循環如何解決的死循環中。結果一直沒能很好的解決,回來討教了一下同學,更加覺得數組的一些方法很好用,所以有必要整理一下數組的一些方法,希望自己能牢記它們。
一,js數組的操作方法:
參照w3c內容:http://www.jb51.net/w3school/js/jsref_obj_array.htm 以及《javascript權威指南》和《jQuery權威指南》再結合自己平時工作學習。再次溫習一下數組的操作方法。
1,稀疏數組(感覺這個平時應該挺少用到的,所以大概記住個概念就好):稀疏數組就是包含從0開始的不連續索引的數組;
2,數組元素的添加和刪除
添加:push();
刪除:pop(); 刪除數組最后一個值,並返回該值。(與push()一起使用)
刪除:shift(); 從數組頭部刪除一個元素;對數組使用該方法會改變數組長度,會將剩下的所有元素索引下降到比當前低1的地方。(與unshift()一起使用)
刪除:delete(); 對一個數組使用該方法,不會改變數組的長度(與shift()不同),會讓這個數組變成一個稀疏數組。
多功能方法:splice() ;可插入刪除替換數組元素 ;
splice() 方法可刪除從 index 處開始的零個或多個元素,並且用參數列表中聲明的一個或多個值來替換那些被刪除的元素。
如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數組。
使用方法和操作說明如下
arrayObject.splice(index,howmany,item1,.....,itemX)
參數 | 描述 |
---|---|
index | 必需。整數,規定添加/刪除項目的位置,使用負數可從數組結尾處規定位置。 |
howmany | 必需。要刪除的項目數量。如果設置為 0,則不會刪除項目。 |
item1, ..., itemX | 可選。向數組添加的新項目。 |
類型 | 描述 |
---|---|
Array | 包含被刪除項目的新數組,如果有的話。 |
3,join() 該方法會將數組中所有的元素連接起來轉為字符串,最后返回字符串。使用方法:array.join(分隔符)
4,reverse() 將數組中的元素順序顛倒,返回顛倒順序后的數組。
5,sort() 將數組中的元素排序后返回。不帶參數調用時,數組以字母表順序排序,如數組中有undefined 則排在最后。
6,concat() 創建並返回一個新數組,它的元素包括調用它的數組的元素和帶中每個參數,如參數中有數組則取該數組中的每個值。不會修改調用的數組
7,slice() 返回指定的片段或者子數組。使用方法: array.slice(start, end); 不會修改調用的數組
8,splice() 在數組中插入或者刪除元素的通用方法,會修改調用的數組
9,push() 和 pop() 在數組的尾部添加和刪除一個或多個元素。並返回數組長度。
10, unshift() 和 shift() 在數組的頭部添加和刪除一個或多個元素。unshift()返回數組長度, shift()返回被刪除的元素
11, toString() toLocalString()
ES5中的數組方法
1,foreach() 循環遍歷數組
2,map() 將調用的數組的每個元素傳遞給指定的函數,並返回一個數組。用法:a = [1,2,3]; b = a.map(function(x){return x*x});返回b = [1,4,9]
3, filter() 返回調用數組的一個子集。a = [1,2,3]; b = a.filter(function(x){returnx<3});返回b = [1,2]。就是過濾的意思,利用某個函數進行過濾數組。
4,every() 和 some() 使用方法和filter一樣,只不過filter返回的符合條件的子集,而這連個方法返回的是布爾值。every():當所有元素都滿足條件時返回true,否則返回false;some():只要有元素滿足就返回true 否則返回false。tips:根據數學慣例 在空數組調用時,every返回true,some返回false
5,reduce() 和 reduceRight() 用法類似filter, 返回函數操作的值。
二,php數組的操作方法:
在php中數組的操作方法也很多,掌握這些基本的操作方法,能夠給自己平時的變成帶來很大的便利,畢竟數組非常的常用。參照w3c :http://www.w3school.com.cn/php/php_ref_array.asp,對數組在php中的操作方法進行學習。
接下來學習php內建函數:以菜鳥教程為教程。以string為例:http://www.runoob.com/php/php-ref-string.html
原文地址:http://www.cnblogs.com/lal-fighting/p/6918804.html