基础知识

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > 基础知识 > Javascript基础教程之数组 array

Javascript基础教程之数组 array

投稿:hebedich

Array是JavaScript中常用的类型,并且JavaScript中的数组和其他语言的数组有比较大的区别。JavaScript中数组中存放的数据类型不一定相同,而且数组的长度也是可改变的。

字符串,数值,布尔值都属于离散值(scalar),如果某个变量是离散的,那么任何时候它只有一个值。

如果想使用变量存储一组值,就需要使用数组(array)。

数组是由多个名称相同的树值构成的集合,集合中每个数组都是数组的元素(element),可以使用变量team存储团队里每个成员的名字。

在JavaScript中,数组使用关键字 Array声明创建,同事还可以声明变量的长度length。例如

复制代码 代码如下:

var aTeam = new Array(12);//声明变量的长度

在无法预知数组的最终个数时,声明数组可以不指定具体个数。例如:

复制代码 代码如下:

var aTeam = new Array();//数组最终个数未知的情况下,可以不声明具体的个数
 aTeam[0] = 1414;
 aTeam[1] = "北京";
aTeam[2] = 0x4;
aTeam[3] = "i can";
aTeam[4] = "red";
aTeam[5] = "blue";
aTeam[6] = "orange";

另外,可以直接创建数组

复制代码 代码如下:

var aTeam = new Array("111","blue","red","beijing");

同字符串一样,数组也可以使用length获取和指定数组的长度。

复制代码 代码如下:

   var aTeam = new Array("111","blue","red","beijing" );
    document.write(aTeam[1]+"<br>");
    document.write(aTeam.length +"<br>")

令注:能更深刻的理解数组。

复制代码 代码如下:

  var aTeam = new Array("111","blue","red","beijing" );
    aTeam[20] = "12415"
    document.write(aTeam[20]+"<br>");
    document.write(aTeam.length +"<br>")

另外, 数组还可以用[ ]来定义。中间使用逗号隔开。

复制代码 代码如下:

    sTeam = [10,"5565","北京",33263,"red"]
    document.write(sTeam[3]) //输出 33263

数组可以使用toString()方便的转化

复制代码 代码如下:

    sTeam = [10,"5565","pking",33263,"red"]
    document.write(sTeam.toString()) //
    //输出结果 10,5565,pking,33263,red
document.write(typeof(ss));
//输出结果 string

如果数组转化为字符串不想使用逗号连接 ,可使用join()方法。

复制代码 代码如下:

   sTeam = [10,"5565","pking",33263,"red"]
    ss = sTeam.join("-");
    dd =sTeam.join("][")
    //输出结果 10,5565,pking,33263,red
    document.write(ss);
    document.write(dd);
//输出 10-5565-pking-33263-red     10][5565][pking][33263][red

  对于字符串,JavaScript使用split()转化为数组

复制代码 代码如下:

var fruit = "apple,2151,orange";
sfruit = fruit.split(",")
    document.write(sfruit); //输出 apple,2151,orange
    document.write(sfruit.join("-")); //输出apple-2151-orange

接上例,javascript提供了reverse()方法使数组反转。

复制代码 代码如下:

var fruit = "apple,2151,orange";
sfruit = fruit.split(",")
    document.write(sfruit); //输出 apple,2151,orange
    document.write(sfruit.join("-")+"<br>"); //输出apple-2151-orange
    document.write(sfruit.reverse()+"<br>");输出 orange,2151,apple
document.write(sfruit.reverse().toString()+"<br>");输出apple,2151,orange

对于字符串反转,javascript没有直接的转化方法,我们可以利用split()将字符串转为数组,利用rerverse()进行反转,再利用join进行连接,达到字符串反转。

复制代码 代码如下:

var fruit = "2151,orange,apple";
var sfruit = "iambeijing123";
document.write(fruit.split(",").reverse()+"<br>");//2151,orange,apple
document.write(sfruit.split("").reverse().join("")+"<br>");//输出iambeijing123

 利用sort()可以使数组元素进行(字母顺序)排序。

复制代码 代码如下:

   fruit = ["orange2","2151","orange","apple"]
document.write(fruit.sort());//输出结果2151,apple,orange,orange2

关于push()和pop()的用法

复制代码 代码如下:

sfruit = new Array();
sfruit.push("red");
sfruit.push("green");
sfruit.push("oragen");
sfruit.push("blue");
document.write(sfruit.length + sfruit.toString()+"<br>");
    var wfruit = sfruit.pop();
    document.write(wfruit+"<br>")
    document.write(sfruit.toString())

如上,javascript将数组看成了一个堆栈,通过push()和pop()进行压栈和出栈处理。

您可能感兴趣的文章:
阅读全文