定義
- 字面量:var arr=[];
- 建構式:var arr=new Array();
任意資料型別,陣列的長度可變可指定arr.length=6;
賦值
- 定義時賦值:
var arr=[100,200,...]; - 通過索引下標賦值:
arr[0]='hello';arr[3]='world';
var arr=new Array(10);//一個整型,新建指定長度的空陣列
var arr=new Array(10.1);//error 不允許傳遞一個浮點型的資料
訪問使用
[]訪問法,索引下標的使用
length=max(index)+1 max-index=length-1
遍歷
- for(var i=0;i<=strs.length;i++) {…} i下標
- while(i<=strs.length){…i++;}
- var i=0;do{…i++;}while(i<=strs.length);
- for(var i in strs){…} 自己進行迭代、判斷結束
堆疊 佇列
- 堆疊
push() 可接受任意型別的引數,將它們逐個添加到陣列的末尾,并回傳陣列的長度
pop()從陣列的末尾移除最后一項,減少陣列的length值,回傳移除的項 - 佇列:
shift() 移除陣列中的第一個項并且回傳該項,同時將陣列的長度減一,
unshift() 在陣列的前端添加任意個項,并回傳新陣列的長度,
var arr=[];
arr.push(100,200);
arr.unshift('hello','world');
console.log(arr,arr.length);
//hello world 100 200 4
console.log(arr.pop());//200
console.log(arr.shift());//hello
console.log(arr,arr.length);//world 100 2
資料型別檢測
- typeof 判斷當前變數資料型別
var arr=[];
console.log(typeof arr);//object
- instanceof 當前變數是某個建構式對應的原型鏈上的嗎,小–>大
console.log(arr instanceof Array);//true
console.log(arr instanceof String);//false
console.log(arr instanceof Object);//true
- isPrototypeOf 當前變數是我的子孫后代嗎 大–>小
console.log(Array.prototype.isPrototypeOf(arr));//true
console.log(Number.prototype.isPrototypeOf(arr));//false
- Array.isArray 是否為陣列型別
console.log(Array.isArray(arr));//true
console.log(Array.isArray(new Array()));//true
console.log(Array.isArray('abc'));//false
console.log(Array.isArray(null));//false
陣列中API函式功能總結
| 函式的名稱 | 功能 | 傳參 | 回傳值 | 執行環境物件 |
|---|---|---|---|---|
| push() | 陣列末尾添加元素 | 任意型別引數 | 新陣列的長度 | 有影響 |
| pop() | 洗掉陣列末尾一個元素 | 無 | 移除的項 | 有影響 |
| shift() | 洗掉陣列開頭的一個元素 | 無 | 移除的項 | 有影響 |
| unshift() | 陣列開頭添加元素 | 任意型別任意多個 | 新陣列的長度 | 有影響 |
| splice() | 洗掉、新增、插入、替換 | 至少是兩個index_start(可正可負),count,新增的資料項s | 洗掉的資料項 | 有影響 |
| sort() | 陣列元素排序 | 默認排序無參,自定義排序引數為比較函式,比較函式有兩個引數 | 排序后的陣列 | 有影響 |
| reverse() | 反轉陣列中的元素 | 無 | 反轉后的陣列 | 有影響 |
| Array.isArray() | 判斷是否為陣列型別 | 當前變數 | ture/false | 沒影響 |
| join() | 陣列序列化 | 可以是指定的分隔符 | 以指定分隔符分隔字串的形式回傳陣列 | 沒影響 |
| toString() | 陣列序列化 | 無 | 以逗號分隔字串的形式回傳陣列 | 沒影響 |
| concat() | 陣列的一層拼接 | 任意資料型別,任意多個 | 拼接后的新陣列 | 沒影響 |
| slice() | 截取陣列的一部分 | [index_start,index_end) | 截取的部分 | 沒影響 |
| indexOf(),lastIndexOf() | 查找資料項在陣列中的索引下標 | 資料項,起始索引下標(默認不寫=0) | 存在回傳索引下標,不存在回傳-1 | 沒影響 |
| every() | 對每一個資料項執行函式,都滿足要求回傳true,否則回傳false | 函式作為引數Fcname(item,index,arr){return bool;} | true/false | 沒影響 |
| some() | 對每一個資料項執行函式,有一個滿足要求的就回傳true,所有的都不滿足要求回傳false | 函式作為引數Fcname(item,index,arr){return bool;} | true/false | 沒影響 |
| filter() | 對每一個資料項執行函式,滿足要求的資料項保存起來,不滿足要求的就不要 | 函式作為引數Fcname(item,index,arr){return bool;} | 滿足要求的的資料項組成的陣列 | 沒影響 |
| map() | 一 一映射:對每一個資料項執行函式的結果進行保存 | 函式作為引數Fcname(item,index,arr){return xx;} | 每次函式呼叫的結果組成的陣列(映射之后的新陣列) | 沒影響 |
| forEach() | 遍歷 | 函式作為引數Fcname(value,index,arr){沒有回傳值} | 無回傳值 | 沒影響 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/296900.html
標籤:其他
上一篇:常用的jQuery事件方法
