var a=[1,2,3,4];//建立陣列直接量
var b=new
array(1,2,3,4);//呼叫建構函式建立
var c=new arrary(10);//只有乙個引數的時候表示建立指定長度的陣列
如果省略陣列直接量中的某個值,就會被賦值為undefined
var a=[1,,3];//建立的陣列為[1,undefined,3];
var b=[,,];//建立的陣列是[undefined,undefined],只有兩個元素,因為陣列最後的逗號是可選項
可以通過length屬性直接獲取陣列的長度,但是陣列的元素個數不一定等於陣列的長度(存在稀疏陣列)
var a=[,];
if(0
in a)
console.log("在索引0處有元素");//輸出
else
console.log("在索引0處沒有元素");//不輸出
console.log("a的陣列長度為"+a.length);//長度為1
var a1=[1,2,3,4];
console.log(a1);//[1,2,3,4]
a1.length=0;
console.log(a);//
陣列的新增和刪除方式有兩組push(),pop()
和unshift(),shift()
前面一組是在陣列的尾部操作,push
在尾部新增新元素,pop
是刪除陣列的最後乙個元素並返回刪除的陣列元素。
後面一組是在陣列的頭部操作,unshift
是在頭部新增新元素,shift
是刪除頭部的乙個元素,並返回那個值。
var a=[1,2,3,4];
a.push(5);//[1,2,3,4,5]
console.log(a);
a.push(6,7);//[1,2,3,4,5,6,7]
console.log(a);
var b=a.pop();
console.log("a="+a);//[1,2,3,4,5,6]
console.log("b="+b);//7
這裡有一點是需要注意的,push
的確可以攜帶多個引數,但是並不是乙個引數乙個引數新增的,而是將所有引數按照引數的順序一次性新增到陣列的末尾,之後的unshift
用法也是一樣。
var a=[1,2,3,4];
a.shift(-1);//[-1,1,2,3,4]
console.log(a);
a.unshift(-3,-2);//[-3,-2,1,2,3,4]此處就體現了是一次性插入,否則的話應該是[-2,-3,1,2,3,4]
console.log(a);
var b=a.shift();
console.log("a="+a);//[-2,-1,1,2,3,4]
console.log("b="+b);//-3
常見的遍歷如下,利用陣列的長度屬性
var a=[1,2,3,4];
for(var i=0,l=a.length;i
其他幾種情況的遍歷
//----------跳過null,undefined和不存的元素
for(var i=0,l=a.length;iif(a[i])continue;
//迴圈體
}//----------跳過undefined和不存在的元素
for(vari=0,l=a.length;iif(a[i]===undefined)continue;
//迴圈體
}//-----------跳過不存在的元素
for(var i =0,l=a.length;iif(!(i in a))continue;
//迴圈體
}
foreach
迴圈將在陣列方法模組介紹 javascript 物件導向整理
整理一下js物件導向中的封裝和繼承。js中封裝有很多種實現方式,這裡列出常用的幾種。直接將我們的成員寫入物件中,用函式返回。缺點 很難看出是乙個模式出來的例項。function stu name,score var stu1 stu 張三 80 var stu2 stu 李四 90 console....
JavaScript 整理筆記(二)
在web瀏覽器中每個標籤中包含乙個被編譯且立即執行的編譯單元。乙個編譯單元包含一組可執行的語句。var 用來定義變數,變數定義當在某個語句內,則稱其為語句的私有變數。當定義在window下時,則稱改變量為全域性變數。迴圈語句 while for do while 允許有乙個可選的前置標籤 label...
javascript 常見演算法整理
字串反轉 因為這個是用的自己的最簡單的方法進行的實現,所以不整理 了 回文 正著讀與反著讀效果一樣,稱為回文 思路 利用陣列的reverse方法,join方法進行拼接,判斷反轉後拼接是否與原資料一致,一致則是回文 出現次數最多的字元 思路 建立乙個物件,然後遍歷字串,字串的每個字元作為物件的key,...