美文网首页
数组操作方法

数组操作方法

作者: 荷尔蒙榨汁机 | 来源:发表于2017-12-07 10:33 被阅读0次
  • shift:
    删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined。
var a = [1,2,3,4,5];
var b = a.shift();
// a = [2,3,4,5] ;b = 1
  • unshift
    将参数添加到原数组头部,并返回数组的长度。
var a = [1,2,3,4,5]
var b = a.unshift(-1,0)
// a = [-1,0,1,2,3,4,5];b = 7
  • pop
    删除数组最后一项,并返回删除元素的值;如果数组为空返回undefined。
var a = [1,2,3,4,5]
var b = a.pop()
a = [1,2,3,4];b = 5
  • push
    将参数添加到原数组末尾,并返回数组的长度。
var  a = [1,2,3,4,5]
var b = a.push(6,7)
// a = [1,2,3,4,5,6,7];b = 7
  • concat
    返回一个新数组,是将参数添加到原数组后面中构成的,原数组不变。
var a = [1,2,3,4,5];
var b = a.concat(6,7);
// a = [1,2,3,4,5];b = [1,2,3,4,5,6,7]
  • splice(start,deleteCount,val1,val2,...)
    从start位置开始删除deleteCount项,并从该位置其插入val1,val2,...,并返回删除的数组。
var a = [1,2,3,4,5];
var b = a.splice(2,2,6,7,8);// a = [1,2,6,7,8,5];b = [3,4]
var a = [1,2,3,4,5];
var b = a.splice(0,1); //作用同shift
var a = [1,2,3,4,5];
var b = a.splice(0,0,-1,0);// a = [-1,0,1,2,3,4,5];b = []
var a = [1,2,3,4,5];
var b = a.splice(a.length-1,1);//a = [1,2,3,4];b=[5]
var a = [1,2,3,4,5];
var b = a.splice(a.length,0,6,7);//a = [1,2,3,4,5,6,7];b = []

  • reverse
    将数组反序
var a = [1,2,3,4,5]
var b = a.reverse();
// a = [5,4,3,2,1];b = [5,4,3,2,1]
  • sort(orderfunction)
    按指定的参数对数组进行排序,数组在原数组上进行排序,不生成副本。
    如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
    如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
    若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
    若 a 等于 b,则返回 0。
    若 a 大于 b,则返回一个大于 0 的值。
var a = [33,4,111,222];
a.sort();//[111,222,33,4]
a.sort(function(a,b){
  return a - b;
});// 4,33,111,222
a.sort(function(a,b){
  return b - a;
});// 222,111,33,4

var a = ['ant','Bug','cat','Dog'];
a.sort();// ["Bug", "Dog", "ant", "cat"];
a.sort(function(s,t){
  var a = s.toLowerCase();
  var b = t.toLowerCase();
  if (a < b) return -1;
  if (a > b) return 1;
  return 0;
})// ["ant", "Bug", "cat", "Dog"]
  • slice(start,end)
    返回原数组中指定开始下标到结束下标的项组成的新数组。
var a = [1,2,3,4,5]
var b = a.slice(2,5);
//a = [1,2,3,4,5];b = [3,4,5]
  • join(separator)
    将数组的元素组合成一个字符串,以separator为分隔符,省略的话默认用逗号为分隔符
var a = [1,2,3,4,5]
var b = a.join("|")
// a = [1,2,3,4,5];b = "1|2|3|4|5"
  • toString()
    将每个元素转化为字符串,与不带任何参数的join()方法返回的字符串一样。
[1,2,3].toString();//"1,2,3"
['a','b','c'].toString();//"a,b,c"
[1,[2,'c']].toString();//"1,2,c"

ES5中新增的9种方法:forEach()、map()、every()、some()、reduce()、reduceRight()、indexOf()和lastIndexOf()。
ES5中新增的Array方法详细说明-张鑫旭

  • forEach()
    对数组进行遍历循环,对数组中的每一项运行给定函数。这个方法没有返回值。参数都是function类型,默认有传参,参数分别为:遍历的数组内容;第对应的数组索引,数组本身。
var a = [1,2,3,4,5]
a.forEach(function(value{
  sum += value;
})
  • map()
    map()方法将调用的数组的每个元素传递给指定的函数,并返回一个数组,它包含该数组的返回值。
var a = [1,2,3]
var b = a.map(function(x) {return x*x;})// [1,4,9]
  • filter()
    map()方法将调用的数组的每个元素传递给指定的函数,并返回一个数组,它包含该数组的返回值。
var a = [1,2,3,4,5]
var smallvalues = a.filter(function(x){return x < 3}) // [2,1]
  • every()和some()
    every()和some()方法是数组的逻辑判定:它们对数组元素应用指定的函数进行判定,返回true或false。som()在判定函数第一次返回true后就停止遍历,并返回true。every在判定false后就停止判定,返回false。
var a = [1,2,3,4,5]
a.every(function(x){return x < 10}) // true
a.every(function(x){return x % 2 ===0 }) // false
a.some(function(x){return x % 2 ===0 }) // true

  • indexOf()和lastIndex()
    搜索整个数组中具有给定值的元素,返回找到的第一个元素的索引或者如果没有找到就返回-1.indexOf()从头至尾搜索,而lastIndexOf()则反向搜索。
var a = [1,2,3,4,5]
a.indexOf(1)// 0 
a.lastIndexOf(1)// 4
a.indexOf(6)// -1

相关文章

  • js基础了解

    js数组常用遍历方法使用: js数组常用操作方法使用: 基本逻辑运算: 基本字符串操作方法:

  • 这应该是JavaScript 中数组操作方法(含ES5及ES5+

    一、ES5 中数组操作方法 详尽使用参看 MDN_Array 二、ES5+ 中数组操作方法 除了 flat 和 f...

  • JS学习笔记_数组篇

    (一)操作方法 push: 从数组末尾添加项,返回数组长度unshift : 从数组头添加项,返回数组长度pop...

  • 前端的基本操作

    数组以及操作方法 在JavaScript中数组就是类似与Python中的列表 其实数组也是一种object 数组的...

  • 数组和对象的操作

    数组操作方法 数组中splice的操作(改变的是原数组,返回结果是分割的数组) 数组中slice的操作(不改变原数...

  • javascript高级

    数组及操作方法 数组就是一组数据的集合,javascript中,数组里面的数据可以是不同类型的 多维数组指的是数组...

  • 数组方法

    构建数组 检测数组 栈方法 队列方法 重排序方法 操作方法 位置方法 迭代方法 递归方法

  • 数组常用方法总结

    数组的一些操作方法?这里按照是否改变原始数组进行分类如下 1. 改变原始数组的 ``` - fill(value,...

  • 数组操作方法

    shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined。 unshift将参数添加...

  • 数组操作方法

    1.过滤 Array.filter(fn),返回值为一个新的数组。 2.遍历 Array.map(fn(cur...

网友评论

      本文标题:数组操作方法

      本文链接:https://www.haomeiwen.com/subject/gfnkixtx.html