JavaScript数组--方法

 1.join()

array.join把array的所有elements转换成String,再将其join,可指定可选的String分隔element,默认为","

var a = [1,2,3];

var s = a.join();   ==> s="1,2,3"

s = a.join(",");     ==> s="1, 2, 3" !结果稍有不同

array.join()与String.split()相反(分割String成几片而构建Array)

2.reverse()

array.reverse()颠倒array elements的顺序并返回颠倒后的array,在原array上执行操作

var a = new Array(1,2,3);  ==> a[0] =1, a[1] = 2, a[3] = 3

a.reverse();     ==> a[1] = 3, a[2] = 2, a[3] = 1

var s = a.join();   ==>s = "3,2,1"

3.sort()

array.sort()在原array上对elements排序,返回排序后的array,默认按字母排序,否则应该传比较函数做为sort()参数

var a = new Array("A", "C", "B");

a.sort();

var s = a.join("/");  ==>s = "A/ B/ C";

var a = [1, 3, 4];

a.sort(

    function(a,b)

    {

          return a - b;

    }

) ;    ==>按<0,0,>0返回 1, 3, 4

toLowerCase(), toUpperCase()转换字母大小写

4.concat()

create, and return array 包含调用concat()的原array中的elements, 其后是concat()参数,若为array将被展开

但不能递归展开

var a = [1,2,3];

a.concat(4,5);   ==>[1,2,3,4,5]

a.concat([4,5], [6,7]); ==>[1,2,3,4,5,6,7]

a.concat(4, [5, [6, 7]]);  ==>[1,2,3,4,5,[6,7] ]

5.slice()

array.slice() return指定array的一个slice, 两参数指定要返回片断的起止,返回array含一参但不含二参

若只有一参无二参,返回由一参起其后所有的elements,若有一参为负是相对array最后的element而言的

-1指定array最后一个elements, -3指定array的最后一个element起,倒数第3个elment

var a = [1,2,3,4,5];

a.slice(0,3);       ==>[1,2,3]

a.slice(3);          ==>[4,5]

a.slice(1,-1);    ==>[2, 3, 4]

a.slice(-3, -2);  ==>[3]

6.splice()

array.splice()是insert或delete或同时insert delete elements通用method,在原array上修改,

位于被insert or delete后的elements会必要地移动,

前两参指delete其中的参一指定要删除element在array中的location,参二指定要删除的个数

此两参后可有N参,指定要从参一指定的location处开始插入的elements

var a = [1,2,3,4,5,6,7,8]

var a.splice(4);    ==>return[5,6,7,8]  a=[1,2,3,4]

a.splice(1,2);      ==>return[2,3]  a=[1,4]

a.splice(1,1);     ==>return[4] a=[1]

var a = [1,2,3,4,5]

a.splice(2,0,'a','b');     ==>返回[] a =[1,2,'a','b',3,4,5]

a.splice(2,2,[1,2},3); ==>返回['a','b'] a =[1,2,3,[1,2],3,3,4,5]

7.push() pop()

像stack()一样使用array, 在原数组上修改,FILO(first in last out)

push()将多个elements附加到array尾部,return新array长度

pop()相反删除array最后一element,减array()长度,return被删值

var stack = [];

stack.pust(1,8);    ==>[1,8]  return 2

stack.pop();         ==>[1]  return 8

stack.push(3);    ==>[1,3]  return 2

stack.pop();     ==>[1]  return 3

stack.push();    ==>[1,[4,5] ] return 2

stack.pop();     ==>[1] return [4,5]

stack.pop();    ==>[]  return [1]

8.unshift() shift()

与push() pop()相似 只是在array的头部进行insert delete 而非在尾部

unshift()return新array length, insert N个elements的时候是一次性被insert的

shift()return新array第一个element

var a = [];

a.unshift(1);    ==>a:[1]  return 1

a.unshift(22);   ==>a:[22,1] return 2

a.shift();      ==>a:[1]  return22

a.unshift(3, [4,5]);   ==>a:[3,[4,5]],1] return 3

a.shift()    ==>a:[[4,5], 1]  return 3

a.shift()  ==> a:[1]  return[4,5]

a.shift() ==>a:[] return 1

9.toString() toSurce()

[1,2,3].toString();    ==>"1,2,3"

['a', "b", "c"].toString();  ==>"a,b,c"

[1,[2.'c']].toString();    ==>"1,2,c"

toLocaleString()是toString的局部化版本,它将调用每个元素的toLocaleString()方法将array elements转为String。

后将生成的String用局部特定(和定义的实现)的分隔符将String连接起来

你可能感兴趣的:(JavaScript学习笔记)