您的位置:首页 > Web前端 > JavaScript

js Array数组的使用

2016-07-01 15:28 351 查看

js Array数组的使用

Array是javascript中的一个事先定义好的对象(也可以称作一个类),可以直接使用

创建Array对象

var array=new Array();

创建指定元素个数的Array对象

var array=new Array(23);

创建具有指定元素的Array对象:

var array=new Array(‘张飒’,'李四','物流','张贲');

输出Array对象中的所有元素的值

for...in

var array=new Array(‘张飒’,'李四','物流','张贲');

for(var index in array)

{

alert(array[index])

}

为已有Array对象添加元素

array[5]='田七';

无论Array对象事先是否定义好了大小,都可以为其添加元素,如果未按索引顺序添加元素,中间

元素将会以null填充

替换原有元素

array[2]="123";

直接指定要替换的Array元素的索引,直接赋值即可替换

Array对象声明的另外一种方式,

不适用new关键字,而是直接使用[]将元素的值包括起来,

这和使用new关键字的效果一样

var array =['张三', '李四', '王五', '赵六'];

将Array中的所有元素组成一个字符串 toString()方法:

将所有元素以","号连接起来,组成一个字符串。

var array = ['张三', '李四', '王五', '赵六'];

alert(array.toString());

如果想以自定义的符号作为Array对象中元素的分隔符

可以使用join

以"-"分割

var array = ['张三', '李四', '王五', '赵六'];

alert(array.join('-'));

以"/"分割

var array = ['张三', '李四', '王五', '赵六'];

alert(array.join('/'));

将字符串转换成Array对象(数组)

很熟悉的方法

var str = '张三,李四,王五,赵六';

var array=str.split(',');

alert(array.toString());

上面的例子如果使用空格分割呢?

下面的语句使用空格分割呢?有神马用处?

var str = '张三李四王五赵六';

var array=str.split('');

alert(array.toString());

2个有用的方法

concat():在数组的末尾添加元素,并返回一个新的数组,原数组不变。

var array = new Array('张三,李四,王五,赵六');

var array1= array.concat('田七', '王八');

alert(array.toString());

alert(array1.toString());

注意:和前边直接向数组中添加元素的区别:

前者操作的数组本身,而后者是返回一个新的数组,元数组不变

slice():

从数组中截取指定的元素,并返回新数组



原数组不变

截取从第2元素开始到最后一个元素结束

var array = new Array('张三','李四','王五','赵六');

var array1 = array.slice(1);

alert(array1.toString());

push():在Array结尾添加一项或多个项

var array = new Array('张三', '李四', '王五', '赵六');

array.push('田七');

array.push('王八','老九','老十');

alert(array.toString());

这个前面添加元素的方法效果是一样的

pop:

删除数组最后一项,并将其作为返回值返回

var array = new Array('张三', '李四', '王五', '赵六');

var lastvalue = array.pop();

alert(lastvalue);

alert(array.toString());

注:删除的是最后一项

shift:

删除数组的第一项,并作为返回值返回

var array = new Array('张三', '李四', '王五', '赵六');

var firstvalue = array.shift();

alert(firstvalue);

alert(array.toString());

注:删除的是第一项

unshift:

把一个项放在数组的第一个位置,

然后把余下的项向后推动一个位置。

代码见下边。

unshift函数的参数也可以是多个,

这样的话就会将第一个参数放在第一项位置,

第二个参数放在第二项的位置,后面依次位移,代码见下边

reverse:

颠倒数组的顺序

var array = new Array('张三', '李四', '王五', '赵六');

array.reverse();

document.write(array.toString());

sort:排序

var array = new Array( '李四','张三', '赵六','王五');

array.sort();

document.write(array.toString());

splice()方法:

好用且简单

第二个参数为0时,不删除任何项

var array = new Array('李四', '张三', '赵六', '王五');

array.splice(1, 0);

document.write(array.toString());

第二个参数为1时,删除下标为第一个参数指定下标的元素

var array = new Array('李四', '张三', '赵六', '王五');

array.splice(1, 1);

document.write(array.toString());

第二个参数为2时,

删除下标为第一个参数指定下标和第一个参数下标+1的下标的元素,

以下以此类推

var array = new Array('李四', '张三', '赵六', '王五');

array.splice(1,2);

document.write(array.toString());

第二个参数为0时,在下标为1的位置新增一项,

原来下标为1的元素后移

var array = new Array('李四', '张三', '赵六', '王五');

array.splice(1,0,'新添加项');

document.write(array.toString());

第二个参数为1时,在下标为1的位置新增一项,原来下标为1的元素删除

var array = new Array('李四', '张三', '赵六', '王五');

array.splice(1, 1, '新添加项');

document.write(array.toString());

第二个参数为2时,在下标为1的位置新增一项,原来下标为1和下标为1+1的元素删除,

以下以此类推

var array = new Array('李四', '张三', '赵六', '王五');

array.splice(1, 2, '新添加项');

document.write(array.toString());

删除2项,新增2项

var array = new Array('李四', '张三', '赵六', '王五');

array.splice(1,2,'第一项','第二项');

document.write(array.toString());
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: