1.陣列的基本操作
前言:ecmascript陣列是很常用的一種資料型別,在其他的語言中,陣列也是很常用很重要的一種資料型別.但ecmascript陣列有些地方還是有自己的特點的,如下:
1)陣列的每一項可以儲存任何資料型別的資料,也就是陣列中的資料可以有多種資料型別.
2)陣列的大小是可以動態調整的,可以隨著資料的新增自動增長以容納新增資料.
下面進入正題,來說說陣列的基本操作
首先要運算元組,那麼就要先建立陣列
陣列的建立
使用建構函式array建立陣列
var arr1=new
array(); //無參建立
var arr2=new
array(20);//指定陣列大小
var arr3=new
array("red","green","blue");//指定陣列中的數值
使用陣列字面量表示法建立陣列
var arr4=;
var arr5=["red","green","blue"];
//和物件一樣,在使用陣列字面量表示法時,也不會呼叫array建構函式(firefox3以及更早版本除外)
注:陣列的屬性length很特殊,可讀可寫,arr[arr.length]=」newvalue」;可用來在陣列末尾新增新項
陣列的檢測方法
第一種,instanceof操作符,與全域性環境有關
if(arr1 instanceof
array)
第二種,array.isarray()方法,支援的瀏覽器有ie9+,firefox 4+,safrai 5+,opera 10.5+和chorme,與全域性環境無關.
if(array.isarray(arr1))
對於尚未實現這個方法的瀏覽器中檢測陣列如下方法:
function
isarray
(value)
陣列的轉換方法
陣列的棧方法
棧(後進先出)是一種可以限制插入和刪除項的資料結構,其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向乙個棧插入新元素又稱作進棧、入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素;從乙個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使其相鄰的元素成為新的棧頂元素。
arr3=arr3.push("yellow","yellow");//進棧
var item=arr3.pop();//出棧
陣列的佇列方法
佇列(先進先出)是一種特殊的線性表,特殊之處在於它只允許在表的前端進行刪除操作,而在表的後端進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。
陣列的排序和重排序
數字正序排序
function
sort
(a,b)
數字反排序
function
sort
(a,b)
注意:reverse()和sort()方法的返回值是經過排序之後的陣列
陣列的常用操作方法
注意:如果slice()方法的引數中有乙個負數,則用陣列長度加上該數來確定相應的位置,如果結束位置小於起始位置,則返回空陣列.
注:
splice()方法始終都會返回乙個陣列,該陣列中包含從原始陣列中刪除的項(如果沒有刪除任何項,則返回乙個空陣列)
位置方法
都接收兩個引數:要查詢的項和表示查詢起點位置的索引
- indexof() 從陣列的開頭向後查詢
- lastindexof() 從陣列的末尾向前查詢
迭代方法
歸併方法
接收兩個引數:乙個在每一項上呼叫的函式和(可選的)作為歸併基礎的初始值
Js陣列操作基本方法
1 檢測陣列 var newarr 1,2,3 newarr instanceof array true array.isarray newarr true 只支援ie9 firefox 4 safari 5 opera 10.5 和chrome 2 建立陣列 var newarr new arra...
JS中的陣列操作
js中的陣列的包裝物件是array.array.prototype.join separator 將轉為陣列字串,原陣列不被修改 var arr 1,2,3 arr.join 1,2,3 arr.join 1 2 3 返回字串,這個字串將陣列的每乙個元素值連線在一起,中間用 separator 隔開...
js中陣列的操作
計算陣列的長度 var arr aaa bbb alert arr.length 通過索引獲取對應值,同時也可以改變索引對應的值 var arr aaa bbb alert arr 0 彈出aaa arr 0 111 alert arr 0 彈出111 返回指定元素的位置,若元素不存在返回 1 va...