-
在数组的开头添加元素;
使用的是splice()方法
arr.splice(index,0,元素); index:是插入的位置 元素: 要插入的元素 var arr = [1,2,3,4]; arr.splice(0,0,5); 结果: console.log(arr); [5,1,2,3,4]
- 在数组的后面添加元素;
使用的是push()方法,并且返回数组的长度 var arr = ['king','tom']; arr.push(item); 结果: console..log(arr); ['king','tom','item']
-
在数组的前面添加元素
使用的是unshift()方法,并且返回数组的长度 var arr = []; arr.unshift(item);
- 删除数组中最后一个元素;
使用的是pop()方法 var arr = [1,2,3,4,5]; arr.pop(); 结果: console.log(arr); [1,2,3,4]
- 删除数组中第一个元素;
使用的是shift()方法; var arr = [1,2,3,4]; arr.shift(); 结果: console.log(arr); [2,3,4]
-
合并数组
合并两个或者多个数组的方法是concat() 并返回结果 var arr = [1,2,3]; var arr2 = [4,5,6]; arr.concat(arr2); console.log(arr); [1,2,3,4,5,6] apply()方法的使用:apply()方法有一个特性,就是func.apply(obj,avgr),avgr是一个数组
- IndexOf()方法, 元素第一次出现的位置;lastIndexOf,元素最后一次出现的位置
例如: 查询数组中出现过多次的元素有哪些; function findMoreMonth(arr){ var result = []; arr.forEach(function(elem){ if(arr.indexOf(elem) != arr.lastIndexOf(elem) && arr.indexOf(elem)==-1){ result.push(elem); } }) return result; }
-
IndexOf(searchvalue,fromindex);方法有两个参数
|
参数1:seachervalue |
参数2:fromindex |
必选 |
可选 |
规定需要检索字符串的值 |
规定字符串中检索开始的位置 |
fromindex:它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。
-
lastIndexOf(seachervalue,fromindex);方法也有两个参数
|
参数1:seachervalue |
参数2:fromindex |
必选 |
可选 |
规定需要检索字符串的值 |
规定字符串中检索开始的位置 |
fromindex:它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符开始检索。 提示: 这两个方法,如果需要检索的字符串没有出现,则返回值是 -1 。
- filter()方法; 方法的作用是对数组的过滤处理操作:
filter() 把传入的函数一次作用到每一个元素上,根据返回值是true,还是false,进行决定这个元素是保留还是丢弃。 例如: var a = [1,2,3,4,5,6]; var r = a.filter(function(x){ return x === 3; }); console.log(r); 打印的结果是: 3。 注意: filter() 返回的是一个数组 ;并且不会对空数组进行检测 ; 不会改变原数组; arr.fillter(function(currentValue, index,arr),thisValue)
函数 |
currentValue |
index |
arr |
thisValue |
必须 |
必须 |
可选 |
可选 |
可选 |
数组中每个元素都会执行这个函数 |
当前元素值 |
当前元素的索引值 |
当前元素属于的数组对象 |
对象作为该执行回调时使用,传递给函数,用作 "this" 的值。如果省略了 thisValue ,"this" 的值为 "undefined" |
简单的示例: 使用filter()方法实现去重; var arr = [1,2,3,4,1,2,5]; var arr2 = arr.filter(function(elem,index,self){ return self.IndexOf(elem) === index; }) 结果打印: console.log(arr2); [3,4,5]
|