JavaScript中的数组
JavaScript中的数组
一、什么是数组
所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。
二、如何定义一个数组
举个例子
var array['吴锦涛','锦州',‘178’];
三、对象中的方法
1.转换方法
var array['吴锦涛','锦州',‘178’,new Date()];
alert(array)
alert(array.valueof)
alert(array.toString)
alert(array.toLocalString)
前三种的返回结果
toLocalString的返回结果
toLocalString方法会返回本地格式的字符串
2.join方法
首先列出我们没使用join方法的代码以及运行结果
代码部分:var array =['wjt','锦州','178',new Date()];
alert(array);
运行结果:
添加join方法之后运行的结果
代码部分: var array =['wjt','锦州','178',new Date()];
array =array.join("|");
alert(array);
运行结果:
从运行结果我们可以看出,join方法有这替换分割符的作用
3.push方法
push方法的代码以及运行结果
代码部分:var array =['wjt','锦州','178'];
array.push('soccer');
alert(array);
运行结果:
从运行结果我们可以看出,push方法会在数组末尾追加一个元素,并返回数组最新长度
4.pop方法
pop方法的代码以及运行结果
代码部分: var array =['wjt','锦州','178','soccer'];
alert(array);
array.pop();
alert(array);
执行pop方法之前的运行结果:
执行pop方法之后的运行结果:
从运行结果我们可以看出,pop方法会在数组末尾移除一个元素,并返回最新数组长度
5.shift方法
shift方法的代码以及运行结果
代码部分:var array =['wjt','锦州','178','soccer'];
alert(array);
array.shift();
alert(array);
执行shift方法前的运行结果:
执行shift方法后的运行结果:
从运行结果我们可以看出,pop方法会在数组首位置移除一个元素,并返回最新数组长度
6. unshift方法
unshift方法的代码以及运行结果
代码部分:var array =['wjt','锦州','178','soccer'];
alert(array);
array.unshift('apple');
alert(array);
执行shift方法前的运行结果:
执行shift方法后的运行结果:
从运行结果我们可以看出,pop方法会在数组首位置增加一个元素,并返回最新数组长度、
7.reverse方法
reverse方法的代码以及运行结果
代码部分:var array =['1','2','3','4','5'];
alert(array);
array.reverse()
alert(array);
执行reverse方法前的运行结果:
执行reverse方法后的运行结果:
10.sort方法
1,sort方法给10以内的数字进行排序的代码以及运行结果
代码部分:var array =[1,2,5,4,3];
alert(array);
array.sort();
alert(array);
执行sort方法前运行结果:
执行sort方法后运行结果:
2.sort方法给其中包含大于10的数字进行排序
代码部分:var array =[1,2,5,4,20,3,10]
alert(array);
array.sort();
alert(array);
执行sort方法前运行结果:
执行sort方法后运行结果:
通过上面的运行结果我们可以看出sort方法的默认排序在数字排序上有些问题,因为数字排序和字符串排序的算法是一样的,所以我们必须修改这一特征,修改的方法就是在sort方法中传递一个函数
3.在sort方法中传递一个compare函数在对其数值进行判断
代码部分:
运行sort方法前的运行结果:
运行sort方法后的运行结果:
11.concat方法
concat方法的代码以及运行结果
代码部分:var array = ['wjt','锦州','21'];
alert(array);
var array2=array.concat('soccer');
alert(array2);
执行concat前的运行结果:
执行concat后的运行结果:
从上面的运行结果我们可以看出通过concat方法array2数组将array中数组的元素赋给array2中并追加一个soccer元素生成一个新的数组
12.slice方法
slice方法的代码以及运行结果
代码部分:var array = ['wjt','锦州','21','book','soccer'];
alert(array);
var array2 = array.slice(1, 3);
alert(array2);
执行slice方法前的运行结果:
执行slice方法后的运行结果:
从上面的运行结果可以看出slice方法可以取得某个位置到指定位置的元素
13.splice方法
splice有三种使用方法,分别是删除,插入,替换
splice删除方法
代码部分:var array = ['wjt','锦州','21','book','soccer'];
alert(array);
var array2 = array.splice(0, 2);
alert(array2);
alert(array);
运行结果
1.
2.
3.
从上面的运行结果我们可以看出在没执行splice方法之前我们可以打印出array中的元素为:'wjt','锦州','21','book','soccer',当我们执行splice方法之后我们发现,array中的前俩个数组中的元素被截取并赋给array2数组中,当我们再次打印array数组中的元素的时候发现,前俩个元素已经被移除了,打印的结果为'21','book','soccer'。
splice插入方法
代码部分:var array = ['wjt','锦州','21','book','soccer'];
alert(array);
var array2 = array.splice(1,0,"计算机编程");
alert(array2);
alert(array);
运行结果
1.
2.
3.
从上面运行结果我们可以看出在没执行splice方法之前我们可以打印出array中的元素为:'wjt','锦州','21','book','soccer',当我们执行splice方法之后我们发现,array2中并没有截取array中的数组元素所以图2打印出的结果为空,因为在splice方法中传递了(1,0,“计算机编程”)三个参数,我们从图3的结果可以看出这句话表示从第2个元素开始截取0个元素并在第2个元素之前追加一个元素,元素的值为“计算机编程”。
splice替换方法
代码部分:var array = ['wjt','锦州','21','book','soccer'];
alert(array);
var array2 = array.splice(1,1,"计算机编程");
alert(array2);
alert(array);
运行结果
1.
2.
3.
从上面运行结果我们可以看出在没执行splice方法之前我们可以打印出array中的元素为:'wjt','锦州','21','book','soccer',当我们执行splice方法之后我们发现,array中第二个元素被截取赋值给array2,但因为我们在因为在splice方法中传递了(1,1,“计算机编程”)三个参数,所以当我们再次打印array数组的时候我们可以发现虽然”锦州“这个元素被移除了但是在原来的位置又追加了一个”计算机编程“的元素。