1.join() 方法。
可在()内添加新的参数并转化为的结果为字符类型。
并且不改变新的数组。
var arr = [112,22,34,546];
console.log(arr.join('')); //1122234546 字符类型
console.log(arr); 原来数组
2.sort()方法
可以排序数组里面的元素,有俩种方式。
①方法里面不写回调函数。
如果数组中元素为数字类型只能检测开头第一个数字
var arr = [123,213435,45312,12,23];
console.log(arr.sort()); // [12, 123, 213435, 23, 45312]
console.log(arr); //[12, 123, 213435, 23, 45312]
var arr2= ['cxk','nmsl','ctrl','hhhh']
console.log(arr2.sort()); //["ctrl", "cxk", "hhhh", "nmsl"]
②在()内书写回调函数
可以从小到大排序和从大到小排序。
var arr = [123,213435,45312,12,23];
console.log(arr.sort(function(a,b){return a-b;})); //[12, 23, 123, 45312, 213435]
console.log(arr.sort(function(a,b){return b-a;})); //[213435, 45312, 123, 23, 12]
3.indexOf()和lastindexOf();
indexOf()里面存放数组元素 检测元素的索引
如果检测不到返回值-1,;
lastindexOf()反之操作就行
var arr = [98,78,56,45,321,34,567];
console.log(arr.indexOf(321)); // 4 返回321所在的索引
console.log(arr.indexOf(231)); // -1 数组中并没有 231这个数。 返回为-1
4.reverse() 方法。
将数组的元素顺序变反过来,并返返回新的数组。
var arr = [12,23,3,435,2,2123,12];
console.log(arr.reverse()); // [12, 2123, 2, 435, 3, 23, 12]
console.log(arr); // [12, 2123, 2, 435, 3, 23, 12]
5.contact()方法。
()内放数组名可以将俩个数组链接起来,不会返回的新的数组。
()内放数组的元素的时候 可以创建一个新的数组。并不会改编原有数组。
var arr = [12,23,34,45,67];
var arr1 = [78,89,100]
console.log(arr.concat(arr1)); // [12, 23, 34, 45, 67, 78, 89, 100]
console.log(arr); // [12, 23, 34, 45, 67] 并未改变原数组。
console.log(arr.concat(9999)); // [12, 23, 34, 45, 67, 9999]
console.log(arr.concat([8898,9999])) // [12, 23, 34, 45, 67, 8898, 9999]
6.slice()
()内有一个参数的时候 截取的参数所在的索引包括索引到最后一位。
()二个参数的时候 从第一个参数的索引开始到 第二个参数索引结束不包括第二的索引。
var arr = [12,23,34,45,56,67]; 一个参数的时候
console.log(arr.slice()); // [12, 23, 34, 45, 56, 67] 直接输出
console.log(arr.slice(2)); // [34, 45, 56, 67] 截取到索引为2的数到最后一项
console.log(arr); // [12, 23, 34, 45, 56, 67] 原数组并没有改变。
var arr = [12,23,34,45,56,67]; 参数为二个的时候。
console.log(arr.slice(2,4)); // [34,45]
console.log(arr); // [12, 23, 34, 45, 56, 67]
7.pop().shift()和push(),unshift().
shift()移除数组第一项 并且返回数数组删的项 改变数组本身。
pop()删除数组 最后一项 并且返回数数组删的项 改变数组本身。
var arr = [12,34,4,743,3412,123]; pop方法
console.log(arr.pop()); //123
console.log(arr); //[12, 34, 4, 743, 3412]
var arr = [12,34,4,743,3412,123]; shift方法
console.log(arr.shift()); // 12
console.log(arr); // [34, 4, 743, 3412, 123]
push()如果()内没有参数 则返回数组长度。有参数时候在原数组最后一项添加元素,并且改变原数组。
unshif()如果()内没有参数 则返回数组长度。有参数时候在原数组第一项添加元素,并且改变原数组。
var arr = [12,34,4,743,3412,123];
console.log(arr.unshift(222)); // 7 返回的数组添加元素 222 后的长度。
console.log(arr.unshift()); // 7 数组被改变的长度。
console.log(arr); // [222, 12, 34, 4, 743, 3412, 123]
var arr = [12,34,4,743,3412,123];
console.log(arr.push()); // 7
console.log(arr.push('cxk')); // 在数组中返回增加 'cxk' 的长度。
console.log(arr); // [12, 34, 4, 743, 3412, 123, "cxk"]
8.splice()方法
可以实现删除,插入和替换 并返回新的数组。
二个参数的时候()第一个参数确定位置(包括该位置),第二个参数表示删除个数。并且改变数组。
四个参数的时候可以实现替换 插入 。
var arr = [12,23,34,45,678,90];
console.log(arr.splice(2,2)); // [34,45]
console.log(arr); //[12, 23, 678, 90] 原数组被改变
四个参数的替换功能。
var arr = [12,23,34,45,678,90];
console.log(arr.splice(2,2,8888,9999)); //将截取的2个数返回成一个新的数组
//并将第三个参数和第四个参数放进数组里面。实现替换功能。 // [34,45]
console.log(arr); // [12, 23, 8888, 9999, 678, 90]
四个参数的时候实现的替换功能。
var arr = [12,23,34,45,678,90];
console.log(arr.splice(2,0,8888,9999)); //打印的为截取部分 第二个参数控制截取数量
console.log(arr); // [12, 23, 8888, 9999, 34, 45, 678, 90] 实现插入功能
9.forEach()方法。
()内放入回调函数,可以传入1-3个参数达到遍历效果。
var arr = [12,23,34,45,56,67];
arr.forEach(function(val,ind,ar){
console.log(val); //12 23 34 45 56 67 遍历结果 数字类型
console.log(ind); // 0 1 2 3 4 5 遍历结果
console.log(ar); //循环遍历所有的数组 6 次 [12, 23, 34, 45, 56, 67]
})
10.some()和every()的方法。
some() ()内写个函数判断是否有元素符合这个条件。有返回true 没有返回 flase
every() ()内写个函数判断全部的元素是否符合函数内条件。有返回true 没有返回 flase。
var arr = [12,34,45,56,78,89];
var res = arr.every(function(x){
return x > 1; //判断数组里面的元素是否全部大于1.
})
console.log(res); // true
var arr = [12,34,45,56,78,89];
var res = arr.some(function(x){
return x< 40;})
console.log(res); //判断数组里面的是否有数小于x<40; true.
11.map()
map()函数指“映射”,对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
var arr = [1,2,3,4,5,6,7,8];
var res = arr.map(function(val){
return val+1; //写运算法则。 然后将元素进行运算最后返回新的数组不改变原数组
})
console.log(arr); // [1, 2, 3, 4, 5, 6, 7, 8]
console.log(res); // [2, 3, 4, 5, 6, 7, 8, 9]
12.filter();
filter()指的是数组的过滤功能。数组中每一项都运行条件,返回满足后的数组。
var arr= [12,23,34,45,56,67,78];
var res = arr.filter(function(x){
return x >40; //书写判断条件 将符合条件的返回成为一个新的数组。不改变原数组。
});
console.log(res); //[45,56,67,78]
console.log(arr); //[12,23,34,45,56,67,78];