本文介紹如下幾個方面的內容:
1.如何建立陣列
2.如何對陣列進行操作(新增,刪除,讀取)
3.陣列常見方法和屬性
如何建立乙個陣列,一般地根據初始化設定簡單分為3種:
1.單純建立陣列:
var arr=new array();
要點:用new關鍵字建立陣列物件array(),array()物件是乙個本地類,可以用new建立乙個物件後使用
2.建立陣列的同時規定陣列大小:
var arr=new array(10);//這裡就建立了乙個初始化大小為10的陣列
注意:當使用陣列大小操作初始化大小時,陣列會自動被撐大,不會像c語言那樣發生錯誤.動態增長是js陣列的乙個性質.另外,js中支援最大陣列長度為
4294967295
3.直接初始化:
var arr=new array("love","hate","pain");//這裡就直接初始化了陣列
當然,類似c語言,可以定義2維3維和多維的陣列,例如:
陣列的屬性:length
arr.length返回陣列arr的長度,常見於迴圈中對陣列的遍歷,比如:
for(var i=0;i執行部分
}陣列元素的訪問: arr[index],其中index表示索引即陣列基數,從0開始,共有arr.length個元素.比如: arr[0]訪問第乙個陣列元素,arr[1]訪問第二個陣列元素....依
次類推 陣列的操作方法:先概覽下下面的這些運算元組常用的方法(13個)
tostring(),valueof(),tolocalstring(),join(),split(),slice(),concat(),
pop(),push(),shift(),unshift(),sort(),splice()
下面逐一分析這些方法的功能和用法.
tostring(),valueof(),tolocalstring():
功能:返回陣列的全部元素
注:陣列名也可以返回整個陣列
**:var m=["am","bm","cm"];//用括號宣告乙個陣列物件
alert(m.tostring());//tostring()返回陣列物件的所有內容,用逗號分割,即am,bm,cm
alert(m.valueof());//valueof()也返回陣列物件的所有內容
alert(m.tolocalestring());//tolocalestring()也返回陣列物件的所有內容,但有地區語言區別,暫不研究
alert(m);//陣列名也返回陣列物件的所有內容
join():
功能:把陣列各個項用某個字元(串)連線起來,但並不修改原來的陣列
**:var m=["am","bm","cm"];//用括號宣告乙個陣列物件
var n=m.join("---");//用---連線am,bm,cm.
alert(m.tostring());//m並沒有被修改,返回am,bm,cm
alert(n);//n是乙個字串,為am---bm---cm
split():
功能:把乙個字串按某個字元(串)分割成乙個陣列,但不修改原字串
**:var str="i love maomao,i am caolvchong";
var arr=str.split("o");//按字元o把str字串分割成乙個陣列
alert(arr);//輸出整個陣列
slice():返回某個位置開始(到某個位置結束)的陣列部分,不修改原陣列
**:var m=["am","bm","cm","dm","em","fm"];
var n=m.slice(2);//返回第二個元素bm後面的元素,即cm,dm,em,fm
var q=m.slice(2,5);//返回第二個元素後到第五個元素,即cm,dm,em
alert(n);
alert(q);
陣列物件的棧操作:
push():陣列末尾新增乙個項
pop():刪除陣列最後乙個項
**:var m=["am","bm","cm","dm","em","fm"];
m.push("gm");//在陣列末尾新增元素gm
alert(m);
m.pop();//刪除陣列最後乙個元素gm
alert(m);
陣列物件的佇列操作:
unshift():陣列頭新增乙個項
shift():刪除陣列第乙個項
**:var m=["am","bm","cm","dm","em","fm"];
m.unshift("gm");//在陣列第乙個元素位置新增元素gm
alert(m);
m.shift();//刪除陣列第乙個元素gm
alert(m);
sort():陣列按字元的ascii碼進行排序,修改陣列物件
注:即便是數字陣列,也將轉化為字串來進行比較排序
**:var m=["am","fm","gm","bm","em","dm"];
m.sort();//按字母序排序
alert(m);
concat():在陣列尾新增元素,但不修改陣列物件
**:var m=["am","bm"]
var n=m.concat("cm");//新增一項cm,並且賦予新陣列物件
alert(m);//原陣列沒有被修改
alert(n);//輸出新陣列物件
splice():在陣列的任意位置進行新增,刪除或者替換元素,直接修改陣列物件
細節:splice()有三個引數或三個以上引數,前兩個是必須的,後面引數是可選的
進行新增:splice(起始項,0,新增項)
進行刪除:splice(起始項,要刪除的項個數)
進行替換:splice(起始項,替換個數,替換項) 這個其實是新增刪除的共同結果
**:var m=["am","bm"]
m.splice(1,0,"fm","sm");//在第一項後面新增fm和sm,返回am,fm,sm,bm
alert(m);
m.splice(2,1);//刪除第二項後面一項(即第三項sm,返回am,fm,bm)
alert(m);
m.splice(2,1,"mm");//替換第二項後面一項(即第三項,返回am,fm,mm)
alert(m);
Javascript基礎 09DOM高階操作
1 image物件 1.1 image物件的建立方式 1 通過建構函式方式建立 var img new image 500 500 第乙個引數為寬度,第二個引數為高度 2 通過 document.createelement 建立img物件 var img document.createelement...
javascript陣列操作
push 尾部新增元素 unshift 頭部新增元素 var arr 3,5,34 arr.push 7 alert arr pop 從尾部刪除元素 shift 從頭部刪除元素 splice 起始位置,刪除的幾個,用新元素填補刪除位置 刪除元素 splice 1,2 從第二個元素往後刪除2個元素 新...
JavaScript陣列練習
找出元素 item 在給定陣列 arr 中的位置 function indexof arr,item return 1 計算給定陣列 arr 中所有元素的總和 function sum arr return sum 移除陣列 arr 中的所有值與 item 相等的元素。不要直接修改陣列 arr,結果...