数组入门
数组的定义: 数组指的是数据的有序列表。
数组的五种定义方式:
(1)var arr = new Array(); //创建一个空数组
(2)var arr=[]; //创建一个空数组
(3)var arr2 = [值1,值2.....] //创建有值数组
(4)var arr4 = new Array(n); //创建一个长度为n个元素数组
(5)var arr5 = new Array(值1,值2....); //创建有值数组q
......................jion()添加分隔符.........................
功能:将数字组拼接成字符串。
例:在数组a中的数字后加上“|”分隔符,并输出a。
运行结果是 1|23|546|7|8|96|4 注:最后一个是没有的。
......................concat()合并.........................
功能:合并多个数组。
例:合并数组a 和 b,并在合并的组合中在添加几个参数,并输出合并的数组。
结果: 1,2,3,4,5,6,7,8,9,111,222,333,100,200
......................slice()获取字符串.........................
功能:获取数组中的字符串。
注:slice(a,b)中间有两个参数,第一个参数代表的是起始下标为 a ,第二个参数代表的是结束下标数+1。
例:获取 arr 数组中下标为0至下标为4的字符串。
结果: 1,2,3,4,5
......................reserve()打乱顺序.........................
功能:将数组中的数顺序打乱。
例:将数组 a 的字符串顺序打乱,并输出a。
结果: yellow,red,lightgray,blue,green
......................splice()删加替.........................
功能:根据参数的不同,对数组进行删除,添加,替换的操作。
注: a-当splice()有两个参数的时候,代表删除字符串,第一个参数表示需要删除的(开始位置)下标,第二个代表是需要删除的个数;
b-当splice()有两个以上的从参数是,首先判断第二个参数是否等于0,如果等于0,即代表添加字符串;如果第二个不等于0;则代表替换。不管是添加还是替换都是由第一个参数决定的,第一个参数代表需要添加、替换的开始位置。
例:删除 a 数组中从下标从1开始的连续4个字符串,并输出a。
结果: 1,6,7,8,9
例:在 a 数组中下标为2的位置添加“222”“333”,并输出a。
结果是 1,2,222,333,3,4,5,6,7,8,9
例:获取 a 数组中从下标为3的字符串的位置开始选择两个字符串,将其替换成“101”“202”“303”,并输出a。
结果: 11,22,33,101,202,303,66
......................sort()排序.........................
作用:将数组中的数字进行排序。
注:此操作有缺陷,只比较首位。eg:352首位是3,98首位是9,正常情况下是352>98,但是由于sort()只排首位,所以会显示98比352大,所以我们需要做一下处理。
function comp(a,b){ //声明一个函数
return a-b; //a-b显示的数据是从小到大进行排序,相反b-a则是将数据从大到小进行排序。
}
a.sort(comp); //调用函数,其中comp作为一个参数调用,所以不用后面不用加括号。此函数不用深度了解会用即可。
例:创建一个arr数组,并对其进行从小到大排序
结果: 22,44,54,66,85,131(从小到大不再演示) ........................栈和队列.....................................
栈的功能:将输入的字符按照顺序显示,从尾进从尾出(先输出的在前面,后输出的在后面,不影响字符串的位置下标;提取字符串的时候是先从尾部提取)。
队列的功能:将输出的字符串按照顺序显示,从头进从头出(先输出的在后面,后输出的在钱面,每输入一个就会影响字符串的位置下标;提取字符串的时候是从头部开始)。
栈两个参数:push 在数组中存放元素,pop从数组中取出元素。
队列两个参数unshift 在数组中存放元素,shift从数组中去除元素。
例:利用栈的两个参数在数组a中存取元素
结果: 2,4,5,6 (先输出的在前面) 2,4,5(从尾部取出)
例:利用队列的两个参数在数组a中存取元素
结果:4,3,2,1(先输出的在后面) 3,2,1(从头部取出)