数组操作

巧记:(关于返回值)凡是添加元素的,返回新的长度;凡是删除元素的,返回删除的那个元素。

splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。[注:会改变原始数组]

语法

arrayObject.splice(index,howmany,item1,.....,itemX)


slice() 方法可从已有的数组中返回选定的元素。

语法

arrayObject.slice(start,end)
练习:
输出var a=["谁","是","麦","兜"];中的"麦""兜";
结果:a.slice(2);//Array [ "麦", "兜" ]

 


sort() 方法使数组中的元素按照一定的顺序排列。

语法:

arrayObject.sort(方法函数)
注意: 
myArray.sort(sortMethod);

该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下: 

  若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。//简记:返回值是负数,则降序。正数,则升序
  若返回值>-1 && <1,则表示 A 和 B 具有相同的排序顺序。
  若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。

练习:降序排

var myarr = new Array("90","6","51","16","100","1");

function sortFun(a,b){

return b-a;

}

alert(myarr.sort(sortFun));//100,90,51,16,6,1


 

reverse() 方法用于颠倒数组中元素的顺序。

语法:

arrayObject.reverse()
练习:颠倒var a=["U","Love","I"];
结果:a.reverse();//Array [ "I", "Love", "U" ]

concat() 方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。

语法

arrayObject.concat(array1,array2,...,arrayN)

join()方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。[注:结果是字符串]

语法:

arrayObject.join(分隔符)


模拟栈(后进先出):push()+pop()

pop() 方法用于删除并返回数组的最后一个元素。[注:会改变原始数组]

语法

arrayObject.pop()

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。[注:会改变原始数组]

语法

arrayObject.push(newelement1,newelement2,....,newelementX)

模拟队列(先进先出):push()+shift()

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

语法

arrayObject.shift()


定义和用法

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

语法

arrayObject.unshift(newelement1,newelement2,....,newelementX)




 





原文地址:https://www.cnblogs.com/xxiaonian/p/5463765.html