志在指尖
用双手敲打未来

javascript数组(JS怎么定义数组)

javascript数组

1.运用Array构造函数
varcolor=newArray();
留意:括号里边参数能够有参数,若为一个数字,表明该数组的长度,假如为多个数字或许一个(多个)非数字表明的是传递数组中应该包含的值。
2.运用数组字面量
varcolor=[];
二.数组的长度
三.数组的办法有数组原型办法,也有从object目标继承来的办法,这儿咱们只介绍数组的原型办法,数组原型办法主要有以下这些:
join()
push()和pop()
shift()和unshift()
sort()
reverse()
concat()
slice()
splice()
indexOf()和lastIndexOf()(ES5新增)
forEach()(ES5新增)
map()(ES5新增)
filter()(ES5新增)
every()(ES5新增)
some()(ES5新增)
reduce()和reduceRight()(ES5新增)
1.join()
join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符,该办法只接纳一个参数:即分隔符。
经过join()办法能够完成重复字符串,只需传入字符串以及重复的次数,就能回来重复后的字符串,函数如下:
2.push()和pop()
push():能够接纳恣意数量的参数,把它们逐个添加到数组结尾,并回来修改后数组的长度。
pop():数组结尾移除最终一项,削减数组的length值,然后回来移除的项。
留意:pop()里边没有参数,及时有参数,也是删去最终一项。
3、shift()和unshift()
shift():删去原数组第一项,并回来删去元素的值;假如数组为空则回来undefined。
unshift:将参数添加到原数组最初,并回来数组的长度。
这组办法和上面的push()和pop()办法正好对应,一个是操作数组的最初,一个是操作数组的完毕。
4.sort()
sort():按升序排列数组项——即最小的值坐落最前面,最大的值排在最终面。
在排序时,sort()办法会调用每个数组项的toString()转型办法,然后比较得到的字符串,以确认怎么排序。即便数组中的每一项都是数值,sort()办法比较的也是字符串,因而会出现以下的这种状况:
为了解决上述问题,sort()办法能够接纳一个比较函数作为参数,以便咱们指定哪个值坐落哪个值的前面。比较函数接纳两个参数,假如第一个参数应该坐落第二个之前则回来一个负数,假如两个参数相等则回来0,假如第一个参数应该坐落第二个之后则回来一个正数。以下便是一个简略的比较函数:
5.reverse()
reverse():回转数组项的顺序。
6、concat()
concat():将参数添加到原数组中。这个办法会先创建当时数组一个副本,然后将接纳到的参数添加到这个副本的结尾,最终回来新构建的数组。在没有给concat()办法传递参数的状况下,它只是仿制当时数组并回来副本。
从上面测试成果能够发现:传入的不是数组,则直接把参数添加到数组后面,假如传入的是数组,则将数组中的各个项添加到数组中。可是假如传入的是一个二维数组呢?
上述代码中,arrCopy2数组的第五项是一个包含两项的数组,也便是说concat办法只能将传入数组中的每一项添加到数组中,假如传入数组中有些项是数组,那么也会把这一数组项当作一项添加到arrCopy2中
7、slice()
slice():回来从原数组中指定开端下标到完毕下标之间的项组成的新数组。slice()办法能够承受一或两个参数,即要回来项的开端和完毕方位。在只要一个参数的状况下,slice()办法回来从该参数指定方位开端到当时数组结尾的所有项。假如有两个参数,该办法回来开端和完毕方位之间的项——但不包含完毕方位的项。
arrCopy只设置了一个参数,也便是开端下标为1,所以回来的数组为下标1(包含下标1)开端到数组最终。
arrCopy2设置了两个参数,回来开端下标(包含1)开端到终止下标(不包含4)的子数组。
arrCopy3设置了两个参数,终止下标为负数,当出现负数时,将负数加上数组长度的值(6)来替换该方位的数,因而便是从1开端到4(不包含)的子数组。
arrCopy4中两个参数都是负数,所以都加上数组长度6转换成正数,因而相当于slice(2,5)。
8、splice()
splice():很强大的数组办法,它有很多种用法,能够完成删去、刺进和替换。
删去:能够删去恣意数量的项,只需指定2个参数:要删去的第一项的方位和要删去的项数。例如,splice(0,2)会删去数组中的前两项。
刺进:能够向指定方位刺进恣意数量的项,只需提供3个参数:开端方位、0(要删去的项数)和要刺进的项。例如,splice(2,0,4,6)会从当时数组的方位2开端刺进4和6。
替换:能够向指定方位刺进恣意数量的项,且同时删去恣意数量的项,只需指定3个参数:开端方位、要删去的项数和要刺进的恣意数量的项。刺进的项数不用与删去的项数相等。例如,splice(2,1,4,6)会删去当时数组方位2的项,然后再从方位2开端刺进4和6。
splice()办法一直都会回来一个数组,该数组中包含从原始数组中删去的项,假如没有删去任何项,则回来一个空数组。
9、indexOf()和lastIndexOf()
indexOf():接纳两个参数:要查找的项和(可选的)表明查找起点方位的索引。其间,从数组的最初(方位0)开端向后查找。
lastIndexOf:接纳两个参数:要查找的项和(可选的)表明查找起点方位的索引。其间,从数组的结尾开端向前查找。
这两个办法都回来要查找的项在数组中的方位,或许在没找到的状况下回来-1。在比较第一个参数与数组中的每一项时,会运用全等操作符。java

JS怎么定义数组

1、什么是数组
数组便是一组数据的调集
其表现方式便是内存中的一段接连的内存地址
数组名称其实便是接连内存地址的首地址
2、关于js中的数组特点
数组界说时无需指定数据类型
数组界说时能够无需指定数组长度
数组能够存储任何数据类型的数据(比如说一个元素保存整型,一个元素保存字符串型,这个在JS中是能够的)
创立数组的语法:
vararr=[值1,值2,值3];//隐式创立vararr=newArray(值1,值2,值3);//直接实例化vararray=newArray(size);//创立数组并指定长度
JS中符号意义:
()表示函数履行
[]表示语法模仿,表示模仿Array类的实例(=newArray())
{}表示语法模仿,表示模仿Object类的实例(=newObject())
//表示语法模仿(正则目标),表示模仿RegExp类的实例(=newRegExp())
//办法一vararr1=[1,3,5,7,9];
document.write(arr1[2]+”);//办法二vararr2=newArray(2,4,6,8,10);
document.write(arr2[3]+”);//办法三vararr3=newArray(3);//固定数组长度为3arr3[0]=1;
arr3[1]=2;
arr3[2]=3;
document.write(arr3[2]+”);
3、关于数组长度
数组目标.length
在js中,每一个数组目标都能够调用length特点,它表示数组目标下共有几个数组元素
示例:
varrow=[‘zhangsan’,’lisi’,’wangwu’];
document.write(‘共有’+row.length+’个人’);varlength=row.length;//对数组进行遍历for(vari=0;i){
document.write(row[i]+”);
}
4、for…in句子
在js中,数组不是数据类型,数组的数据类型其实便是目标
Js中的For…..in句子能够完成对一个目标的一切特点的遍历
也能够运用for…in句子完成对一个数组的一切元素的遍历
语法:
for(variinarray){
}
原理:数组中有几个元素,for..in句子就循环履行多少次
每次履行时,将当时数组元素的下标存放到变量i中
varrow=[‘zhangsan’,’lisi’,’wangwu’,’xiaoqiang’];for(variinrow){
document.write(i+’:’+row[i]+”);
}
结果:
0:zhangsan
1:lisi
2:wangwu
3:xiaoqiang
5、文本下标
格局:
arr[‘key’]=value;
在js中,文本下标的数组元素,不计入数组长度
以文本下标方式添加到数组,实际是以特点方式添加到数组目标中的
仿制代码vararr=[1,2,3];
arr[‘first’]=’zhangsan’;
arr[‘second’]=’lisi’;
document.write(arr.length+”);
document.write(arr.first+”);
document.write(arr.second+”);
结果:
3
zhangsan
lisi
遍历带有文本下标的数组:
vararr=[1,2,3];
arr[‘first’]=’zhangsan’;
arr[‘second’]=’lisi’;for(variinarr){
document.write(i+’:’+arr[i]+”);
结果:
0:1
1:2
2:3
first:zhangsan
second:lisi
6、多维数组
vararr=[
[10,’zhangsan’,’male’],
[11,’lisi’,’female’],
[12,’wangwu’,’male’]
];for(variinarr){for(varjinarr[i]){
document.write(arr[i][j]);
}
document.write(”);
}

未经允许不得转载:IT技术网站 » javascript数组(JS怎么定义数组)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载