JavaScript的核心对象(1)--数组

在JavaScript中,根据索引值的类型不同将数组分为:
1,数字数组(以数字作为索引的数组)
2,关联数组(索引类型为非负整数和字符串)
其中:

  • 数组的声明及填充:
var test=new Array();
或者:
var test=new Array(20);
或者:
var test=new Array("sunday","monday","tuesday");
或者使用字面量符号:
var test=["sunday","monday","tuesday"];

其中关于JavaScript中的字面量的介绍详见:
http://blog.csdn.net/chandddlleerr/article/details/72328554

  • 关于数组内容的填充:
var test = new Array();
            test[0] = "00000";
            test[1] = "11111";
            test[2] = "22222";
            test[3] = "33333";
            test[4] = "44444";
            test[5] = "55555";
            test[6] = "66666";
            test[7] = "77777";
            test[8] = "88888";

当然也可以用创建数组字面量的方法快速填充,如:

var test=["1111","2222","3333","4444","55555"];

同时也可以使用for语句循环填充

  • 关于关联数据的简单介绍:

    使用字符串代替数字作为索引值的数组就叫做关联数组,如:

            var states = new Array();
            states["xia"] = "woai";
            states["le"] = "beijing";
            states["bin"] = "tiananmen";

注意上面的格式也可以用states.xia=”woai”这种形式进行替代。

上面的关联数组可以理解成一个键对应一个值,当然在关联数组中一个键也可以对应多个值,如:

student["Courses"]=new Array("Math","English","PE");

这个时候一个学生的课程对应了多个,即一个键对应多个值,是一个嵌套数据,所谓的嵌套数据就是在一个数组中加上另外的数据,如:

var test=new Array(new Array(1,2,3),new Array(4,5,6),new Array(7,8,9));
//这个时候test就是一个嵌套数组,也就是一个我们所熟知的二维数组
//1 2 3
//4 5 6
//7 8 9

下面介绍数组的方法:

数组中的方法有:

concat():合并两个数组
join():把数组中的元素放入一个字符串,元素通过指定的分隔符进行分割
pop():删除并返回数组的最后一个元素
push():向数组末尾添加一个或多个元素
reverse():颠倒数组中元素的顺序
shift():删除并返回数组的第一个元素
slice():从已有数组中选取部分元素构成新数组
sort():对字符数组或数字数组进行排序
splice():删除或替换数组元素
toLocaleSting():把数组转化为本地格式,并返回结果
toString():把数组转化为字符串,并返回结果
unshift():向数组开头添加一个或多个元素

下面我们依次进行示例介绍:

  • concat():合并两个数组:
<script>
            var test = new Array();
            test[0] = "00000";
            test[1] = "11111";
            test[2] = "22222";
            test[3] = "33333";
            test[4] = "44444";
            test[5] = "55555";
            test[6] = "66666";
            test[7] = "77777";
            test[8] = "88888";

            var Myarray = ["nihao", "womende", "zhendeshi"];

            aaa = test.concat(Myarray);
            //将数组Myarray连接到数组test,然后全部放在数组aaa中,这里的aaa并没有声明,但是这里的不声明在JavaScript中就被认为声明了一个全局数组变量
</script>
  • join():把数组的所有元素放进一个字符串中,元素可以通过指定的分隔符进行分割
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script 
            var Myarray = ["nihao", "womende", "zhendeshi"];
            aa = Myarray.join();
        </script>
    </head>
    <body>
        <script>
            document.write(aa);
        </script>
    </body>
</html>

页面的结果为:nihao,womende,zhendeshi

可见:如果join()中没有任何参数时候,就是默认的是以逗号进行分割,如果改为aa = Myarray.join(“”);就直接是一个完全的不带逗号的字符串,因为规定了分隔符为空。

  • pop():删除并返回数组的最后一个元素,如:
    a=Myarray.pop();

其中把Marray数组中的最后一个元素删除,返回给了a

  • push()方法:在数组的末尾添加新元素,从而增加数组的长度,如:
Myarray.push("哈哈哈");
  • shift()及unshift()方法

shift():移除数组的第一个元素并返回被移除的值
unshift():向数组的头部添加元素

注意:这些方法的功能与pop()和push()方法的功能类似,不同的是一个在头部进行操作,一个是在尾部操作,所以具体的用法同上。

  • slice()方法:

将数组的元素赋值到另一个新数组中,该方法有两个参数,第一个是复制的起始元素,第二个参数是复制的额终止元素,且不包括该索引表示的元素,数组的索引是从0开始的,如:

    var Myarray = ["one", "two", "three"];

            bb=Myarray.slice(0,2);

其中bb,就存放了前两个元素,one,two因为不包括索引的最后一个元素,所以没有three元素,如果想要包括进来,可以改为:bb=Myarray.slice(0,3);

  • splice():将从数组的某一位置开始移除指定书目的元素,并可以使用新元素替代这些元素,如:

            var Myarray = ["one", "two", "three","four","five","six","seven"];

            Myarray.splice(1,2,"haha")

splice方法中参数1,2代表作着从第1个元素开始,删除2个元素,然后这部分替换为”haha”,最后结果为:”one”, “haha”,”four”,”five”,”six”,”seven”

注意:如果参数中没有后面的替换元素,那么执行的操作就只有删除。

1. 计算机科学与技术 目 录 1.1 JavaScript内核系列 第1章 前言及概述 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 JavaScript内核系列 第2章 基本概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.3 JavaScript内核系列 第3章 对象JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 1.4 JavaScript内核系列 第4章 函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 1.5 JavaScript内核系列 第5章 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 1.6 JavaScript内核系列 第6章 正则表达式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 1.7 JavaScript内核系列 第7章 闭包 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 1.8 JavaScript内核系列 第8章 面向对象JavaScript(上) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105 1.9 JavaScript内核系列 第8章 面向对象JavaScript(下) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118 1.10 JavaScript内核系列 第9章 函数式的Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值