1.什麼是陣列:
陣列是值的有序集合。每個值叫做元素,每個元素在陣列中都有數字位置編號,也就是索引。
js中的陣列是弱型別的,陣列中可以含有不同型別的元素。陣列元素甚至可以是物件或其他陣列。
2.陣列定義:例如:
var arr = [1,true,null,undefined,,[1,2]];
3.型別判斷總結了四種方式:
1. var arr = new array() //new 可以省略
2 .var arr = new array(item,item,item...); //定義時即初始化
3. var arr = new array(length) //定義指定長度的陣列
4. var arr = //最常用
補充:var arr1 = [1,,2]; // 1,undefined,2
var arr2 = [,,]; // undefined*2 (第二個逗號右邊部分會被忽略掉,存在相容性問題,不推薦使用)
var arr3 = new array(100); // undefined*100 (表示建立乙個陣列,陣列有100個空元素,長度為100)
4.陣列賦值陣列名 instanceof array
array.isarray()
.constructor === array
以上四種方法都可用來判斷是否為陣列
返回值 true 表示是陣列
false 表示不是陣列
5.陣列取值陣列中每乙個元素都有乙個索引,從0開始
陣列名[索引]=值;
陣列名[索引]
6.陣列刪除7.陣列長度1.通過delete刪除
var arr = [1,2,3,4,5];
delete arr[0]; //刪除第乙個元素
console.log(arr[0]); //undefined
注意: 刪除後陣列長度不變,即 length = 5
2.通過length刪除
arr.length -=1;
console.log(arr); //[1,2,3,4]; 元素5被刪除
注意: 刪除後陣列長度變,即 length = 4
陣列元素增刪是動態的,所以陣列長度無需指定大小
8.陣列迭代(即遍歷)length from 0 to 4294967295(2^23-1)
例如:var arr8 = new array(4294967295); //
var arr9 = new array(4294967296); //報錯(範圍錯誤) uncaught rangeerror: invalid array length
10.補充1.for
for(var i=0; i9.陣列特點(兩個不限制 )陣列定義時無需指定資料型別 (不限制型別),陣列可以儲存任何資料型別的資料
陣列定義時無需指定陣列長度 (不限制長度)
1.多維陣列定義:引用型別賦值,傳遞的是位址
基本型別變數賦值,傳遞的是值
var arr = [['李四',20],['王五',23],['莉莉',19],['小花',21]]
2.多維陣列賦值3.多維陣列取值陣列名[索引][索引]=值;
例如:為arr新增乙個學生 『小明』,20歲
arr[4][0]='小明';
arr[4][1]=20;
陣列名[索引][索引]
4.陣列物件1.概念:稀疏陣列並不含有從0開始的連續索引。一般length屬性值比實際元素個數大。var arr0 = ;
arr0['張三'] = 20;
arr0['李四'] = 10;
arr0['格式'] = 16;
arr0['王師'] = 19;
console.log(arr0); // array(0) 張三:20,李四:10,格式:16,王師:19
注意: length = 0
補充: for...in 專門為物件陣列設計,可以遍歷陣列物件
for(var i in arr0)
2.判斷
1.共同點:var arr1 =
[undefined]
;//存在元素,名為undefined
var arr2 =
newarray(1
);//長度為1,但不存在元素
0in arr1;
//true
0in arr2;
//false
var arr3 =[,
,];0
in arr3;
//false
2.不同點:1.都可以遍歷
2.都有length
3.都可通過索引取值 str[索引] arr[索引]
4.有相似的方法
1.遍歷:
陣列:for for...in foreach
字串:for
2.字串不能修改,陣列可以修改
3.陣列賦值賦的是位址,字串賦的是值
JS陣列定義及詳解
js陣列定義及詳解 1 什麼是陣列 陣列就是一組資料的集合 其表現形式就是記憶體中的一段連續的記憶體位址 陣列名稱其實就是連續記憶體位址的首位址 2 關於js中的陣列特點 陣列定義時無需指定資料型別 陣列定義時可以無需指定陣列長度 陣列可以儲存任何資料型別的資料 比如說乙個元素儲存整型,乙個元素儲存...
JS陣列定義及詳解
1 什麼是陣列 陣列就是一組資料的集合 其表現形式就是記憶體中的一段連續的記憶體位址 陣列名稱其實就是連續記憶體位址的首位址 2 關於js中的陣列特點 陣列定義時無需指定資料型別 陣列定義時可以無需指定陣列長度 陣列可以儲存任何資料型別的資料 比如說乙個元素儲存整型,乙個元素儲存字串型,這個在js中...
js定義陣列及相關操作
陣列有四種定義的方式 使用建構函式 var a new array var b new array 8 var c new array first second third 或者陣列直接量 var d first second third 屬性 array只有乙個屬性,就是length,length...