JavaScript的学习入门整理篇第2/3页

 更新时间:2008年09月24日 23:22:09   作者:  
每次刚开始学语言时,作者都喜欢用“hello world”例子l来侮辱我们的智商,我想大家都不是笨蛋,故而寥寥数笔写了一点

8:JavaScript的数组使用方法

 1.join()

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

var a = [1,2,3];

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

= 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();   ==>= "3,2,1"

3.sort()

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

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

a.sort();

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

var a = [134];

a.sort(

    
function(a,b)

    {

          
return a - b;

    }

) ;    
==><0,0,>0返回 134

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, [67]]);  ==>[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);    ==>[234]

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();     
==>[1return [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,1return 2

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

a.unshift(
3, [4,5]);   ==>a:[3,[4,5]],1return 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连接起来

相关文章

最新评论