JavaScript之Array常见的方法详解

目录
  • 不改变原数组的方法
    • 1、concat
      • 语法:
      • 参数:
      • 返回值:
    • 2、join
      • 语法:
      • 参数:
      • 返回值:
      • 注意:
    • 3、slice
      • 语法:
      • 参数:
      • 返回值:
    • 4、toString
      • 语法:
      • 返回值:
  • 改变原数组的方法
    • 1、pop
      • 语法:
      • 返回值
    • 2、push
      • 语法:
      • 参数:
      • 返回值:
    • 3、shift
      • 语法:
      • 返回值:
    • 4、unshift
      • 语法:
      • 参数:
      • 返回值:
    • 5、splice
      • 语法:
    • 6、reverse
      • 语法:
      • 返回值:
    • 7、sort
      • 语法:
      • 参数:
      • 返回值:
  • 总结

不改变原数组的方法

1、concat

用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。

语法:

var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])

参数:

ValueN(可选):

数组和/或值,将被合并到一个新的数组中。如果省略了所有 valueN 参数,则 concat 会返回调用此方法的现存数组的一个浅拷贝。

返回值:

一个新的Array

2、join

将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。

语法:

arr.join([separator])

参数:

separator (可选):

指定一个字符串来分隔数组的每个元素。如果需要,将分隔符转换为字符串。如果缺省该值,数组元素用逗号(,)分隔。如果separator是空字符串(""),则所有元素之间都没有任何字符。

返回值:

一个所有数组元素连接的字符串。如果 arr.length 为0,则返回空字符串。

注意:

如果一个元素为 undefined 或 null,它会被转换为空字符串。

3、slice

返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝(包括 begin,不包括end)。原始数组不会被改变。

语法:

arr.slice([begin[, end]])

参数:

begin(可选):提取起始处的索引(从 0 开始),从该索引开始提取原数组元素。如果该参数为负数,则表示从原数组中的倒数第几个元素开始提取,slice(-2) 表示提取原数组中的倒数第二个元素到最后一个元素(包含最后一个元素)。如果省略 begin,则 slice 从索引 0 开始。如果 begin 超出原数组的索引范围,则会返回空数组。

end(可选):提取终止处的索引(从 0 开始),在该索引处结束提取原数组元素。slice 会提取原数组中索引从 begin 到 end 的所有元素(包含 begin,但不包含 end)。如果该参数为负数, 则它表示在原数组中的倒数第几个元素结束抽取。如果 end 被省略,则 slice 会一直提取到原数组末尾。如果 end 大于数组的长度,slice 也会一直提取到原数组末尾。

返回值:

一个含有被提取元素的新数组。

4、toString

返回一个字符串,表示指定的数组及其元素。

语法:

arr.toString()

返回值:

一个表示指定的数组及其元素的字符串。

改变原数组的方法

1、pop

从数组中删除最后一个元素,并返回该元素的值。

语法:

arr.pop()

返回值

从数组中删除的元素(当数组为空时返回undefined)。

2、push

将一个或多个元素添加到数组的末尾,并返回该数组的新长度。

语法:

arr.push(element1, ..., elementN)

参数:

elementN:被添加到数组末尾的元素。

返回值:

当调用该方法时,新的 length 属性值将被返回。

3、shift

从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。

语法:

arr.shift()

返回值:

从数组中删除的元素; 如果数组为空则返回 undefined 。

4、unshift

将一个或多个元素添加到数组的开头,并返回该数组的新长度(该方法修改原有数组)。

语法:

arr.unshift(element1, ..., elementN)

参数:

elementN:要添加到数组开头的元素或多个元素。

返回值:

当一个对象调用该方法时,返回其 length 属性值。

5、splice

通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。

语法:

array.splice(start[, deleteCount[, item1[, item2[, ...]]]])

**参数:**

start​:指定修改的开始位置(从0计数)。如果超出了数组的长度,则从数组末尾开始添加内容;如果是负值,则表示从数组末位开始的第几位(从-1计数,这意味着-n是倒数第n个元素并且等价于array.length-n);如果负数的绝对值大于数组的长度,则表示开始位置为第0位。

deleteCount(可选):整数,表示要移除的数组元素的个数。如果 deleteCount 大于 start 之后的元素的总数,则从 start 后面的元素都将被删除(含第 start 位)。如果 deleteCount 被省略了,或者它的值大于等于array.length - start(也就是说,如果它大于或者等于start之后的所有元素的数量),那么start之后数组的所有元素都会被删除。如果 deleteCount 是 0 或者负数,则不移除元素。这种情况下,至少应添加一个新元素。

item1, item2, … (可选):要添加进数组的元素,从start 位置开始。如果不指定,则 splice() 将只删除数组元素。

返回值:

由被删除的元素组成的一个数组。如果只删除了一个元素,则返回只包含一个元素的数组。如果没有删除元素,则返回空数组。

6、reverse

将数组中元素的位置颠倒,并返回该数组。数组的第一个元素会变成最后一个,数组的最后一个元素变成第一个。该方法会改变原数组。

语法:

arr.reverse()

返回值:

颠倒后的数组。

7、sort

用算法对数组的元素进行排序,并返回数组。

语法:

arr.sort([compareFunction])

参数:

compareFunction(可选):用来指定按某种顺序进行排列的函数。如果省略,元素按照转换为的字符串的各个字符的Unicode位点进行排序。

1.firstEl:第一个用于比较的元素。

2.secondEl:第二个用于比较的元素。

返回值:

排序后的数组。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • js array数组对象操作方法汇总

    js 数组对象操作方法如下: 1. 创建数组 var array1 = [1,2] //方法一 var array2 = new Array() //方法二 array[0] = 1; array[1] = 2; 2.遍历数组 for循环 和for...in 循环 var array1 = [1,2]; var l = array1.length; //for循环 for(var i=0;i< l;i++){ console.log(array1 [i]); } //for...in 循环 fo

  • js中Array.forEach跳出循环的方法实例

    目录 forEach()方法 js中 Array.forEach如何跳出循环 解决方式: 总结 forEach()方法 语法:array.forEach(callback(currentvalue,index,arr) ,thisValue) 其中 callback为数组中每个元素执行的函数,该函数可接受1-3个参数: currentvalue参数表示数组的当前元素项,必须的参数 index参数表示的当前元素下标,可选参数 arr参数表示当前元素所属的数组,可选参数 thisValue表示执行回

  • JavaScript Array对象使用方法解析

    1.数组的常用方法 push(val):数组的末尾添加新的元素,返回操作完成后数组的长度 pop():删除数组最后一个元素,返回被删除的元素 shift():删除数组的第一个元素,返回被删除的元素 unshift(val):数组的开头添加新的元素,返回操作完成后数组的长度 <script> var arr = [1,2,3,4] // 在数组末尾添加元素 arr.push(5) console.log(arr) // [1, 2, 3, 4, 5] // 删除数组最后一个元素 arr.pop(

  • JavaScript Array对象基本方法详解

    昨天出去前端面试又失败,期间问了个有关于数组对象的问题,下面就这类问题总结下JavaScript常用的数组操作方法. 一.何为数组(Array)对象 数组对象是使用单独的变量名来存储一系列的值. 二.创建数组的三种方式 2.1使用关键词 new 来创建数组对象. let myStar =new Array(); myStar[0]="刘德华"; myStar[1]="成龙"; myStar[2]="林青霞"; myStar[3]="王菲

  • JavaScript数组Array的一些常用方法总结

    目录 一.JavaScript中创建数组的方式 二.数组方法概括 三.方法详解 1.join() 2.pop() 3.shift() 4.push() 5.unshift() 6.concat() 7.slice() 8.sort() 9.reverse() 10.toString() 11.splice() 12.valueOf() 13.indexOf() 14.lastIndexOf() 15.forEach() 16.map() 17.filter() 18.every() 19.som

  • JavaScript之Array常见的方法详解

    目录 不改变原数组的方法 1.concat 语法: 参数: 返回值: 2.join 语法: 参数: 返回值: 注意: 3.slice 语法: 参数: 返回值: 4.toString 语法: 返回值: 改变原数组的方法 1.pop 语法: 返回值 2.push 语法: 参数: 返回值: 3.shift 语法: 返回值: 4.unshift 语法: 参数: 返回值: 5.splice 语法: 6.reverse 语法: 返回值: 7.sort 语法: 参数: 返回值: 总结 不改变原数组的方法 1.

  • JavaScript之String常见的方法详解

    目录 1.charAt 语法 参数 index 返回值 2.concat 语法 参数 str2 [, -strN] 返回值 3.indexOf 语法 参数 searchValue fromIndex(可选) 返回值 特殊情况 4.lastIndexOf 5.match 语法 参数 regexp 返回值 6.replace 语法 参数 regexp (pattern) substr (pattern) newSubStr (replacement) function (replacement) 返

  • JavaScript数组排序reverse()和sort()方法详解

    JavaScript中数组排序的方法有两个reverse()和sort(). reverse()方法会反转数组项的顺序: var arr = [1,2,3,4,5]; arr.reverse(); alert(arr); //5,4,3,2,1 sort()方法会按照字符串升序排列数组项,sort()方法会调用每个数组项的tostring()方法,即使数组中的每一项都是数值,sort()方法比较的也是字符串: var arr = [1,2,11,15,5]; arr.sort(); alert(

  • 对vue中v-if的常见使用方法详解

    使用过Vue的小伙伴一定使用过v-if 这个属性,但是这个属性主要是来干什么的呢,他得用途是那些? 这里我总结了一下,v-if使用一般有两个场景: 1- 多个元素 通过条件判断展示或者隐藏某个元素.或者多个元素 2- 进行两个视图之间的切换 下面我写了两个例子,是Vue官方的简单实例. 第一个实例实现了 type等于不同值,A,B,C 三个元素的展示情况. 第二个例子实现了,点击按钮实现两个视图的切换. <!DOCTYPE html> <html lang="en"&

  • 利用JavaScript获取用户IP属地方法详解

    目录 写在前面 尝试一:navigator.geolocation 尝试二:sohu 的接口 尝试三:百度地图的接口 写在后面 写在前面 想要像一些平台那样显示用户的位置信息,例如某省市那样.那么这是如何做到的, 据说这个位置信息的准确性在通信网络运营商那里?先不管,先实践尝试下能不能获取. 尝试一:navigator.geolocation 尝试了使用 navigator.geolocation,但未能成功拿到信息. getGeolocation(){ if ('geolocation' in

  • JavaScript中Array的filter函数详解

    目录 描述 理解 示例 原生实现 描述 filter为数组中的每个元素调用一次callback函数,并利用所有使得callback返回 true 或等价于 true 的值的元素创建一个新数组.callback只会在已经赋值的索引上被调用,对于那些已经被删除或者从未被赋值的索引不会被调用.那些没有通过callback 测试的元素会被跳过,不会被包含在新数组中. 理解 filter不会改变原数组,它返回过滤后的新数组. filter遍历的元素范围在第一次调用callback之前就已经确定了.在调用f

  • JavaScript中数组Array.sort()排序方法详解

    JavaScript中数组的sort()方法主要用于对数组的元素进行排序.其中,sort()方法有一个可选参数.但是,此参数必须是函数. 数组在调用sort()方法时,如果没有传参将按字母顺序(字符编码顺序)对数组中的元素进行排序,如果想按照其他标准进行排序,就需要进行传一个参数且为函数,该函数要比较两个值,并且会返回一个用于说明这两个值的相对顺序的数字. 1.对数字数组进行由小到大的顺序进行排序. 代码: var arr = [22,12,3,43,56,47,4]; arr.sort();

  • js中的面向对象之对象常见创建方法详解

    本文实例讲述了js中的面向对象之对象常见创建方法.分享给大家供大家参考,具体如下: 创建对象的几种常用方式 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.使用Object或对象字面量创建对象 使用object var student = new Object(); student.name = "easy"; student.age = "20"; 使用字面量 var sutdent = { na

  • JavaScript实现反转字符串的方法详解

    本文实例讲述了JavaScript实现反转字符串的方法.分享给大家供大家参考,具体如下: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>JavaScript 实现反转字符串</title> </head> <body> <script langu

  • javascript编程实现栈的方法详解【经典数据结构】

    本文实例讲述了javascript编程实现栈的方法.分享给大家供大家参考,具体如下: 栈是限定仅在表尾进行插入或删除操作的线性表,栈是先进后出的.栈的表尾称为栈顶(top),而表头端称为栈底(bottom). 和线性表类似,栈也有两种存储表示方法,顺序栈和链栈. 这里讲一下顺序栈,设置指针top指示栈顶元素在顺序栈中的位置.通常的做法就是以top=0表示空栈.base为栈底指针,top为栈顶指针. 如果base为null,则表示栈结构不存在,如果top=base则表示空栈.每当插入一个新的元素,

随机推荐