js中数组方法及分类

 

方法名 对应版本 功能 原数组是否改变
pop() ES5- 删除最后一位,并返回删除的数据 y
shift() ES5- 删除第一位,并返回删除的数据 y
unshift() ES5- 在第一位新增一或多个数据,返回长度 y
push() ES5- 在最后一位新增一或多个数据,返回长度 y
reverse() ES5- 反转数组,返回结果 y
sort() ES5- 排序(字符规则),返回结果 y
splice() ES5- 删除指定位置,并替换,返回删除的数据 y
toString() ES5- 直接转为字符串,并返回 n
valueOf() ES5- 返回数组对象的原始值 n
indexOf() ES5 查询并返回数据的索引 n
lastIndexOf() ES5 反向查询并返回数据的索引 n
forEach() ES5

参数为回调函数,会遍历数组所有的项,回调函数接受三个参数,

分别为value,index,self;forEach没有返回值

n
map() ES5 同forEach,同时回调函数返回数据,组成新数组由map返回 n
filter() ES5 同forEach,同时回调函数返回布尔值,为true的数据组成新数组由filter返回 n
every() ES5 同forEach,同时回调函数返回布尔值,全部为true,由every返回true n
some() ES5 同forEach,同时回调函数返回布尔值,只要由一个为true,由some返回true n
reduce() ES5 归并,同forEach,迭代数组的所有项,并构建一个最终值,由reduce返回 n
reduceRight() ES5 反向归并,同forEach,迭代数组的所有项,并构建一个最终值,由reduceRight返回 n
concat() ES5- 合并数组,并返回合并之后的数据 n
join() ES5- 使用分隔符,将数组转为字符串并返回 n
slice() ES5- 截取指定位置的数组,并返回 n

一.操作使原数组改变
 
1.数组的增
  unshift(data1,data2...) 
  向数组的首位增加若干个元素,返回新的长度
var arr = [1,2,3];
var str = arr.unshift(0,0,0);       
console.log(str);         //6(length)
console.log(arr);         // [0, 0, 0, 1, 2, 3]

   push(data1,data2...)

  向数组的末位增加若干个元素,返回新的长度

var arr = [1,2,3];
var str = arr.push(6,6,6);      
console.log(str);        //6(length)
console.log(arr); //  [1, 2, 3, 6, 6, 6]

 2.数组的删

  shift()

  删除并返回数组最前一个元素

var arr = [1,2,3];
console.log(arr.pop());     //1(元素)
console.log(arr);           //[2,3]

  pop()

  删除并返回数组最后一个元素

var arr = [1,2,3];
console.log(arr.pop());     //3(元素)
console.log(arr);           //[1,2]

 3.数组的改

  splice(start,n,data1,data2...)参数可选

  删除数组中的元素,并添加新的元素
 var arr = ["A","B","C","D","E"];    
console.log(arr.splice(2,0,"a","b"));  //[]
console.log(arr);    //["A", "B", "a", "b", "C", "D", "E"] 原数组改变

  sort()

  对数组中元素排序(字符方法),默认是升序

var arr = [4,2,3,5,1];
console.log(arr.sort());    //[1, 2, 3, 4, 5]
console.log(arr);           //[1, 2, 3, 4, 5]  原数组改变

  reserve()

  反转数组中元素的顺序

var arr = [1,2,3];
console.log(arr.reverse());     //[3,2,1]
console.log(arr);               //[3,2,1]   原数组改变
二.原数组不改变
1.slice(m,n)
 从m位开始截取n位元素
当n省略或n=0时,选取元素直到最后一位;
m<0或n<0时,表示从最后一位开始算起
 
var arr = ["A","B","C","D","E"];
console.log(arr.slice(1,3));         //["B","C"]
console.log(arr.slice(1));           //["B","C","D","E"]
console.log(arr.slice(-4,-1));       //["B","C","D"]
console.log(arr.slice(-2));          //["D","E"]
console.log(arr.slice(1,-2));        //["B","C"]
console.log(arr);                    //["A","B","C","D","E"]
2.toString()
  将数组转化为字符
var arr=["夜","的","第","七","章"] ;
var str=arr.toString();
console.log(str);

 方法更新中...

 

 

猜你喜欢

转载自www.cnblogs.com/mutuo/p/11440005.html