首页 > 代码库 > 【温故而知新-Javascript】使用数组

【温故而知新-Javascript】使用数组

Javascript 数组的工作方式与大多数编程语言的数组类似。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>learn4Array</title></head><body><script type="text/javascript">    //创建和填充数组    var myArray = new Array();    myArray[0] = 100;    myArray[1] = "Luka";    myArray[2] = true;</script></body></html>

创建数组的时候不需要声明数组中元素的个数。 Javascript数组会自动调整大小以便容纳所有元素。

不必声明数组所含数据的类型。JavaScript数组可以混合包含各种数据的类型 。

 

1. 使用数组字面量

使用字面量,可以在一条语句中创建和填充数组。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>learn4Array</title></head><body><script type="text/javascript">    var myArray = [100,"Luka",true];</script></body></html>

此例通过在一对方括号([ 和 ])之间指定所需要数组元素的方法创建了一个新数组,并将其赋给变量 myArray 。

 

2. 读取和修改数组内容

要读取指定索引位置的数组元素值,应使用一对方括号([ 和 ])并将索引值放在方括号间。JavaScript数组的索引值从0开始。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>learn4Array</title></head><body><script type="text/javascript">    var myArray = [100,"Luka",true];    //读取指定索引位置的数组元素值    document.writeln("Index 0:"+myArray[0]+"<br />");    //修改数组    myArray[0] = "Monday";    document.writeln("Index 0:"+myArray[0]);</script></body></html>

输出结果:

Index 0:100Index 0:Monday 

 

3. 枚举数组内容

可以用 for 循环枚举数组内容。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>learn4Array</title></head><body><script type="text/javascript">    var myArray = [100,"Luka",true];    for(var i= 0;i < myArray.length;i++){        document.writeln("Index "+i+": "+myArray[i]+"<br />")    }</script></body></html>

输出结果:

Index 0: 100Index 1: LukaIndex 2: true

 

3. 使用内置的数组方法

Javascript 中的Array 对象定义了许多方法。下图罗列了一些最常用的方法。

技术分享

 

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>learn4Array</title></head><body><script type="text/javascript">    var myArray1 = [100,"Luka"];    var myArray2 = [true];    //concat(<otherArray>)    var myArray = myArray1.concat(myArray2);    for(var i= 0;i < myArray.length;i++){        document.writeln("myArray["+i+"]: "+myArray[i]+"<br />")    }    document.writeln("<br />");    //join(<separator>)    var strArray = myArray.join(-);    document.writeln(strArray+"<br />");    document.writeln("<br />");    //pop()    myArray.pop();    document.writeln(myArray+"<br />");    document.writeln("<br />");    //push(<item>)    myArray.push("Hello Javascript",200);    document.writeln(myArray+"<br />");    document.writeln("<br />");    //reverse()    myArray = myArray.reverse();    document.writeln(myArray+"<br />");    document.writeln("<br />");    //shift()     myArray.shift();;    document.writeln(myArray+"<br />");    document.writeln("<br />");    //slice(<start>,<end>)    document.writeln( myArray.slice(1,3)+"<br />");    document.writeln( myArray.slice(0)+"<br />");    document.writeln("<br />");    //sort()    function sortNumber(a,b)    {        return b - a;    }    var myArray3 = ["George","John","Thomas","James","Adrew","Martin"];    var myArray4 = [10,5,40,25,1000,1];    document.writeln( myArray3.sort()+"<br />");    document.writeln( myArray4.sort()+"<br />");    //使用一个排序函数,按照数值的大小对数字进行排序    document.writeln( myArray4.sort(sortNumber)+"<br />");    document.writeln("<br />");    //unshift(<item>)    myArray.unshift(1,2);    document.writeln(myArray+"<br />");</script></body></html>

输出结果:

myArray[0]: 100myArray[1]: LukamyArray[2]: true100-Luka-true100,Luka100,Luka,Hello Javascript,200200,Hello Javascript,Luka,100Hello Javascript,Luka,100Luka,100Hello Javascript,Luka,100Adrew,George,James,John,Martin,Thomas1,10,1000,25,40,51000,40,25,10,5,11,2,Hello Javascript,Luka,100

【温故而知新-Javascript】使用数组