在js中数组是我们经常使用的,js内置了许多有关数组的方法。在此,我对常见的数组方法进行列举:
1.创建数组
使用new Array()的方法创建数组:var arr = new Array();
如果知道数组的长度可以在new的时候指定数组的长度:var arr = new Array(20),但是如果写入一个字符串会创建一个长度为1,等于该字符串的数组。
使用数组字面变量的方法创建数组:var arr = ['a', 'b', 'c'];
2.检测数组
使用arr.isArray()检测arr是否是数组。
3.Push方法
push方法是先数组的末尾添加元素。var arr = ['a', 'b']; arr.push('v'); //arr的输出是['a', 'b', 'c'];
4.Pop方法
pop方法是移除数组末尾的元素,并返回该元素。var arr = ['a', 'b']; var popArr = arr.pop();//popArr的输出是b,arr输出是a
利用push和pop方法可以实现栈
5.shift方法
shift会移除数组的第一项元素,并返回该元素。var arr = ['a', 'b']; var shiftArr = arr.shift();//shift输出的是a。arr数组中只剩b元素了。利用shift方法和push方法可以实现队列
6.unshift方法
unshift方法是向前端添加任意个长度的数组,并返回数组的长度。 var arr = ['a']; var length = arr.unshift('b', 'c');//length输出为2。利用unshift和pop可以实现反方向的队列
7.concat方法
concat在没有参数的时候,会复制当前数组,返回副本。但有一个或多个数组,会把这些添加到结果数组中。例如:
var colors = ['red', 'blue']; colors.concat('yellow', ['a']); //colors的输出就是red,blue,yellow,a
8.slice方法
slice通俗一点的讲就是从指定位置截取数组,并返回截取的数组,不包括结束位置的项。例如:
var arr = ['a', 'b', 'c']; var new = arr.slice(1);//new输出的是b,c。
var subStr = arr.slice(1,2)//subStr输出的是b
9.splice方法
splice是一个强大的数组。它既可以删除数据也可以插入数据,也可以删除、替换数据。在此,我只简单的介绍一下删除方法
第一个参数指定要删除第一项的位置和删除的数量
var arr = ['a', 'b', 'c']; var c = arr.splice(1,1);//arr输出为a,c
10.join方法
join方法可以将数组通过指定的字符连接在一起,然后以字符串的形式输出
var arr = [1, 2, 3]; console.log(arr.join('&')); //1&2&3
11.创建字符串
1)通过New String()的方式创建,返回新对象
2)通过字面直接去创建
3)charAt(index)
查询指定index的字符,如果存在返回字符,否则返回空字符串
4)concat(str1...)
str.concat(str1)用于连接一个或多个字符串。
5)indexof(value, from)
value是必须参数,from表示从那个位置查,如果from不写,默认从首部查找。返回查找字符串的位置,如果字符串不存在返回-1
6)lastIndexOf(vale, from)
从后向前查找字符串位置。查找不到返回-1。
7) replace(replaceStr, str)
replaceStr表示要替换的字符串,或者可以是正则表达式,后面可以跟g表示替换所有的匹配字符串,一般写成/a/g,表示替换所有的
8) split(str)
str表示按照指定的字符划分,在划分的时候例如'|a|c',他会划分为['', 'a', 'c']这样的数组。和ARRAY.join(str)刚好相反。
9)slice(from, to)
分割字符串,from,to分别表示起始和结束位置。
10)substr(from,length)
分割字符串,from表示起始位置,length表示分割几个字符串
11) toLowerCase()
大写转换为小写
12) toUpperCase()
小写