Javascript Array对象
在javascript中所有的数组都是Array对象。我们可以通过Array类来创建,维护数组。
在javascript中有好几种创建数组的方法
和所有的编程语言一样在javascript中数组也可以通过下标来存取。
Array对象也覆盖了toString和valueOf方法。对数组调用这两个方法,数组会调用每一项的toString或valueOf方法,并将结果用逗号连接起来返回。
另外Array对象还提供了join方法让用户可以更加灵活的来得到想要的字符串。join方法提供了一个参数,对数组调用join方法,返回的结果将是用这个参数将数组的每一项串连起来的字符串。
通过push和pop方法,我们可以像操作一个栈一样来操作数组。
通过push和shift方法,我们可以像操作队列一样来操作数组。
push方法在数组的尾部添加一个新项,pop则是将数组尾部的一个项去除。shift方法则是将数组的头部的一个项去除掉。
reverse方法是将数组顺序反过来,sort方法则是按顺序对数组项进行排序
删除:arr.splice(start,num); 这样会将数组中从start开始num项从数组中删除掉
插入加删除:arr.splice(start,num,"xx");将数组中从start开始的num项删除,第三个参数开始是要插入到数组中去的新项,将会从start位置开始插入。如果num为0则不删除任何数组项
在javascript中有好几种创建数组的方法
var arr = new Array(); //直接声明一个Array对象
var arr1 = new Array(20);//声明一个Array对象,并对数组进行初始化,设置数组的大小为20
var arr2 = new Array("red","blue","green"); //声明一个数组,并通过参数给数组设置初始值
var arr3 = ["red","blue","green"]; //也可以是直接通过一对[]来对数组进行初始化
上面的这些方式都可以创建一个数组,我们可以通过Array类提供的方法和属性对创建的数组进行操作。var arr1 = new Array(20);//声明一个Array对象,并对数组进行初始化,设置数组的大小为20
var arr2 = new Array("red","blue","green"); //声明一个数组,并通过参数给数组设置初始值
var arr3 = ["red","blue","green"]; //也可以是直接通过一对[]来对数组进行初始化
和所有的编程语言一样在javascript中数组也可以通过下标来存取。
var arr = ["hello","world"];
alert(arr[0]); //显示hello
alert(arr[1]); //显示world
arr[2] = "你好";//在数组里插入了一个新项,并赋值为"你好"
arr[25] = "aaa";//在javascript中我们可以直接对某个下标进行赋值。这里我对下标25赋值,这样在javascript中会自动对3到24项插入null
Array对象也有length属性,对数组调用length可以得到数组的长度。alert(arr[0]); //显示hello
alert(arr[1]); //显示world
arr[2] = "你好";//在数组里插入了一个新项,并赋值为"你好"
arr[25] = "aaa";//在javascript中我们可以直接对某个下标进行赋值。这里我对下标25赋值,这样在javascript中会自动对3到24项插入null
Array对象也覆盖了toString和valueOf方法。对数组调用这两个方法,数组会调用每一项的toString或valueOf方法,并将结果用逗号连接起来返回。
另外Array对象还提供了join方法让用户可以更加灵活的来得到想要的字符串。join方法提供了一个参数,对数组调用join方法,返回的结果将是用这个参数将数组的每一项串连起来的字符串。
var arr = ["hello","world","haha"];
alert(arr.length); //将显示数组长度3
alert(arr.toString()); //将显示"hello,world,haha";
alert(arr.join("-")); //将显示"hello-world-haha";
Array对象还可以像栈和队列一样操作。alert(arr.length); //将显示数组长度3
alert(arr.toString()); //将显示"hello,world,haha";
alert(arr.join("-")); //将显示"hello-world-haha";
通过push和pop方法,我们可以像操作一个栈一样来操作数组。
通过push和shift方法,我们可以像操作队列一样来操作数组。
push方法在数组的尾部添加一个新项,pop则是将数组尾部的一个项去除。shift方法则是将数组的头部的一个项去除掉。
var arr = ["hello","world","haha"];
arr.push("你好"); //在数组的尾部增加一个新项,等同于arr[3] = "你好"
alert(arr.toString()); //这里将显示hello,world,haha,你好
arr.pop(); //将数组尾部的一个项去掉,
alert(arr.toString()); //在这里我们可以发现输出时显示的将是hello,world,haha
arr.shift(); //将数组头部的一个项去除掉
alert(arr.toString()); //将显示world,haha
reverse和sort方法,通过这两个方法可以改变数组的顺序。arr.push("你好"); //在数组的尾部增加一个新项,等同于arr[3] = "你好"
alert(arr.toString()); //这里将显示hello,world,haha,你好
arr.pop(); //将数组尾部的一个项去掉,
alert(arr.toString()); //在这里我们可以发现输出时显示的将是hello,world,haha
arr.shift(); //将数组头部的一个项去除掉
alert(arr.toString()); //将显示world,haha
reverse方法是将数组顺序反过来,sort方法则是按顺序对数组项进行排序
var arr = [3,85,44,37,23];
arr.reverse(); //将数组顺序反过来
alert(arr.toString()); //显示的是23,37,44,85,3
arr.sort(); //数组排序
alert(arr.toString()); //显示3,23,37,44,85
最后还有一个方法splice方法。这个方法有几个作用:arr.reverse(); //将数组顺序反过来
alert(arr.toString()); //显示的是23,37,44,85,3
arr.sort(); //数组排序
alert(arr.toString()); //显示3,23,37,44,85
删除:arr.splice(start,num); 这样会将数组中从start开始num项从数组中删除掉
插入加删除:arr.splice(start,num,"xx");将数组中从start开始的num项删除,第三个参数开始是要插入到数组中去的新项,将会从start位置开始插入。如果num为0则不删除任何数组项