在JavaScript中數據類型分爲基本數據類型和引用類型兩種。Array類型與String類型(基本數據類型的包裝類型)屬於引用類型,方法較多且較爲常用。
Array類型
以下代碼中變量a爲Array
1.創建方法
創建一個Array類型變量a有下面幾種方法:
var a=new Array();
var a=new Array(5);
var a=new Array("red","blue","yellow");
var a=["red","blue","yellow"];
2.檢測數組
檢測a是否是Array類型,有兩種方法:
a instanceOf Array; //返回true或false
Array.isArray(a);
3.轉換方法
將a轉換爲字符串的表示有下面幾種方法:
a.toString(); //返回用“,”連接的數組項的字符串表示
a.valueOf();
a.toLocaleString();
a.join("xxx"); //將數組中的項連接在一起,項與項之間用join的參數連接,返回一個完整的字符串
4.棧方法
實現棧數據結構的方法,在數組末尾增加和刪減項
a.push();
a.pop();
5.隊列方法
實現隊列數據結構的方法,在數組末尾增加項,在數組開始位置移除項:
a.push();<----------------->a.shift();
在數組開始位置增加項,在數組末尾移除項:
a.unshift();<--------------->a.pop();
6.重排序方法
對數組進行反向調轉:
a.reverse();
對數組項進行排序:
a.sort()。這個方法會對數組的每一項調用toString()方法,然後對字符串進行比較,所以對於數字無法實現由小到大的排列。因此,sort()方法可以接受一個比較函數作爲參數,根據你自己定義的排序規則進行排序。
7.數組操作
將數組與另外的數組或幾個項進行連接:
a.concat( , , ,.....);
基於當前數組中的一個或多個項創建一個新的數組:
a.slice();一個參數時表示截取參數索引位置到數組末尾的所有項,兩個參數時表示截取第一個參數索引位置到第二個參數索引位置之前的所有項。
對數組進行刪除,插入,替換的強大方法splice():
a.splice();第一個參數表示要刪除的第一項,第二個參數表示要刪除的項數,之後的參數表示向第一個參數的指定位置添加的項。
8.位置方法
返回數組中要查找的項的位置,要求與查找的項必須嚴格相等(===):
a.indexOf();
a.lastIndexOf();
9.迭代方法
下面方法中傳入的function的參數依次表示:item數組項的值,index該項索引,array數組本身
迭代數組每一項並進行相應操作:
a.forEach(function(item,index,array){});
對數組每一項運行給定函數,如果函數對每一項都返回true,則 返回true,否則false:
a.every(function(item,index,array){});
對數組每一項運行給定函數,如果函數對任意一項返回true,則 返回true,否則false:
a.some(function(item,index,array){});
對數組每一項運行給定函數,返回該函數會返回true的項組成的數組:
a.filter(function(item,index,array){});
對數組每一項運行給定函數,返回每次函數調用的結果組成的數組:
a.map(function(item,index,array){});
String類型
以下代碼中變量s爲String類型變量
1.字符方法
返回索引位置字符:
s.charAt();
返回索引位置字符編碼:
s.charCodeAt();
2.字符串操作方法
字符串連接:
s.concat(); //這種方法會創建一個新字符串,原來的字符串保持不變
“+”操作符;
基於子字符串創建新串:
slice(),substr(),substring()。slice()和substring()的第一個參數指定子字符串的開始位置,第二個參數指定結束位置但不包括該位置。substr()的第一個參數也指定子字符串的開始位置,但是第二個參數指定的是子字符串的長度。
3.字符串位置方法
返回要查找的子字符串的索引位置,從前往後查找:
s.indexOf();
返回要查找的子字符串的索引位置,從後往前查找:
s.lastIndexOf();
4.字符串整理方法
去除字符串前置及後綴的空格,返回一個副本,就是說原字符串不變:
s.trim();
5.字符串大小寫轉換方法
轉化爲全部小寫:
s.toLowerCase();
轉換爲全部大寫:
s.toUpperCase();
6.字符串的比較方法
對字符串進行比較,字母表在前返回負數,相等返回0,字母表上順序在後返回正數:
s.localeCompare();