實例方法
push
向數(shù)組末尾添加元素
[int] arr.push(element1, ..., elementN)
返回:添加之后的length
eg1: 連接兩個數(shù)組
var a = [1, 2, 3];
var b = [4, 5, 6];
Array.prototype.push.apply(a, b);
a // [1, 2, 3, 4, 5, 6]
eg2: 給對象push值,對象變成array-like
var obj = {};
Array.prototype.push.call(obj, 'a', 'b', 4);
obj // { '0': 'a', '1': 'b', '2': 3, length: 3 }
pop
從數(shù)組末尾刪除一個元素
[ele] arr.pop()
shift
刪除數(shù)組第一個元素
[ele] arr.shift()
unshift
在數(shù)組的開頭添加一個或者多個元素
[int] arr.unshift(element1, ..., elementN)
join
str = arr.join([separator = ','])
eg:
var s = Array.prototype.join.call('hello', '-');
s // h-e-l-l-o
var obj = {}
Array.prototype.push(obj, 1, 2, 3); // obj is array-like
var s = Array.prototype.join.call(obj, '#');
s // 1#2#3
concat
concat方法用于多個數(shù)組的合并趣竣。它將新數(shù)組的成員去扣,添加到原數(shù)組的尾部八拱,然后返回一個新數(shù)組兔辅,原數(shù)組不變肤频。
var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])
reverse
arr.reverse()
slice
var slice_arr = arr.slice([begin[, end]])
eg:
將array-like對象轉(zhuǎn)為真正的數(shù)組
var obj = { '0': 'a', '1': 2, '2': 3, length: 3 };
var a = Array.prototype.slice.call(obj);
a // ['a', 2, 3]
splice
從arr的start處刪除deleteCount個元素,然后插入一些元素瀑晒,返回刪除的元素數(shù)組
var dlt_array = arr.splice(start, deleteCount, [add_ele1, add_ele2, ...])
sort
arr.sort()
arr.sort(function(a, b){
return a - b;
})
forEach
map
var new_arr = arr.map(callback[, thisArg])
callback = function(currentElement, index, arr){...}
eg:
function str2int(str) {
return str.split('')
.filter(function (ele) {
return (ele >= '0') && (ele <= '9');
})
.map(function (ele) {
return ele - '0';
})
.reduce(function (pre, cur) {
return 10 * pre + cur;
});
}
var a = str2int('1ad023cdx;xda23');
console.log(a);