Array method

concat()

concat()方法会返回一个当前数组和其他数组或值合并的新数组。

语法:

arr.concat(value1, value2, ..., valueN);  

例1:

var alpha = ['a', 'b', 'c'];  
var numeric = [1, 2, 3];  
var alphaNumeric = alpha.concat(numeric);  
console.log(alphaNumeric);   //输出['a', 'b', 'c', 1, 2, 3]  

例2:合并多个数组

var num1 = [1, 2, 3];  
var num2 = [4, 5, 6];  
var num3 = [7, 8, 9];  
var nums = num1.concat(num2, num3);  
console.log(nums);  //输出[1, 2, 3, 4, 5, 6, 7, 8, 9]  

indexOf()

indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置,如果没有找到则返回-1。
语法:

arr.indexOf(searchElement[, fromIndex]);

例如:

var array = [2, 5, 9];  
var index = array.indexOf(2);    
console.log(index);   //返回0
index = array.indexOf(7);  //返回-1,数组中没有字符7,找不到  

join()

join()方法把数组中的所有元素加入到一个字符串中。
语法:

str = arr.join(separator);  

例如:

var a = new Array('Wind', 'Rain', 'Fire');  
var myVar1 = a.join();    
var myVar2 = a.join(', ');  
var myVar3 = a.join(' + ');  
console.log(myVar1);   //返回Wind,Rain,Fire 
console.log(myVar2);   //返回Wind, Rain, Fire 
console.log(myVar3);   //返回Wind + Rain + Fire   

lastIndexOf()

lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索,如果找不到则返回-1。
语法:

array.lastIndexOf(searchElement[, fromIndex]);  

例如:

var array = [2, 5, 9, 2];  
var index = array.lastIndexOf(2);   //index是3  
index = array.lastIndexOf(7);   //index是-1  
index = array.lastIndexOf(2, 3);  //index是3  

pop()

pop()方法可以删除一个数组中的最后一个元素并且返回该元素。
语法:

arr.pop();  

例如:

var myFish = ['angel', 'clown', 'mandarin', 'surgeon'];  
console.log('myFish before: ' + myFish);  
var popped = myFish.pop();  
console.log('myFish after: ' + myFish);  
console.log('Removed this element: ' + poped);  
/*  
    log的结果:  
    myFish before: angel,clown,mandarin,surgeon  
    myFish after: angel,clown,mandarin  
    Removed this element: surgeon
*/  

push()

push()方法可以添加一个或多个元素到数组的末尾,并返回新数组的长度。
语法:

arr.push(element1, ..., elementN);  

例如:

var sports = ['soccer', 'baseball'];  
var total = sports.push('football', 'swimming');  
console.log(sports);  //['soccer', 'baseball', 'football', 'swimming']
console.log(total);   //4  

reverse()

reverse()方法可以使数组反向。
语法:

arr.reverse();  

例如:

var myArray = ['one', 'two', 'three'];  
myArray.reverse();  
console.log(myArray);  //['three', 'two', 'one']  

shift()

shift()方法可以删除数组的第一个元素并返回该元素。这个方法会改变数组的长度。
语法:

arr.shift();  

例如:

var myFish = ['angel', 'clown', 'mandarin', 'surgeon'];
console.log('myFish before: ' + myFish);
var shifted = myFish.shift();
console.log('myFish after: ' + myFish);
console.log('Removed this element: ' + shifted);  
/*  
    log的结果:  
    myFish before: angel,clown,mandarin,surgeon
    myFish after: clown,mandarin,surgeon
    Removed this element: angel
*/  

slice()

slice()方法可以提取一个数组的一部分,并以一个新数组对象来返回提取的部分。
语法:

arr.slice(begin[, end]);  

其中,begin是开始截取的位置,end是截取结束的位置。截取的部分是begin和end中间的部分,而不包括end。
例如:

var fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango'];  
var citrus = fruits.slice(1, 3);  
console.log(citrus);  //输出['Orange', 'Lemon']  

sort()

sort()方法用于对数组的元素进行排序。
语法:

arr.sort([compareFunction]);  

例如:

var fruit = ["apples", "bananas", "Cherries"];
fruit.sort();    // ["Cherries", "apples", "bananas"]
var scores = [1, 2, 10, 21]; 
scores.sort();   // [1, 10, 2, 21]
var things = ["word", "Word", "1 Word", "2 Words"];
things.sort();   // ["1 Word", "2 Words", "Word", "word"]  

splice()

splice()方法可以改变一个数组的内容,当删除旧元素时添加新元素。
语法:

array.splice(index , howMany[, element1[, ...[, elementN]]]);
array.splice(index);     // SpiderMonkey/Firefox extension  

例如:

var myFish = ['angel', 'clown', 'mandarin', 'surgeon'];  
var removed = myFish.splice(2, 0, 'drum');  
console.log(removed);   //输出['angel', 'clown', 'drum', 'mandarin', 'surgeon']  

toString()

toString()方法可以将一个指定数组转换成字符串并返回。
语法:

arr.toString();  

例如:

var monthNames = ['Jan', 'Feb', 'Mar', 'Apr'];
var myVar = monthNames.toString();  
console.log(myVar);  //输出Jan,Feb,Mar,Apr  

unshift()

unshift()方法可以添加一个或多个元素到数组的开端,并返回新数组的长度。
语法:

arr.unshift(element1, ..., elementN);  

例如:

var arr = [1, 2];
arr.unshift(0);   // result of call is 3, the new array length
// arr is [0, 1, 2]
arr.unshift(-2, -1);   // = 5
// arr is [-2, -1, 0, 1, 2]
arr.unshift( [-3] );
// arr is [[-3], -2, -1, 0, 1, 2]  

valueOf()

valueOf()方法返回指定对象的原始值。
语法:

Object.valueOf();  

例如:

myNumberType.prototype.valueOf = function () {   
    return customPrimitiveValue;   
};