您当前的位置:首页 > 网站建设 > javascript
| php | asp | css | H5 | javascript | Mysql | Dreamweaver | Delphi | 网站维护 | 帝国cms | React | 考试系统 | ajax | jQuery | 小程序 |

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

51自学网 2022-02-21 13:38:28
  javascript

一.JavaScript中创建数组的方式

(1)使用 Array 构造函数:

var arr1 = new Array(); //创建一个空数组var arr2 = new Array(10); // 创建一个包含20项的数组var arr3 = new Array("zs","ls","ww"); // 创建一个包含3个字符串的数组

(2)使用数组字面量表示法:

var arr4 = []; //创建一个空数组var arr5 = [10]; // 创建一个包含1项的数组var arr6 = ["zs","ls","ww"]; // 创建一个包含3个字符串的数组

二、数组方法概括

方法名 功能 原数组是否改变
join() 使用分隔符,将数组转为字符串并返回 n
pop() 删除最后一位,并返回删除的数据 y
shift() 删除第一位,并返回删除的数据 y
push 在最后新增一个或多个数据,返回长度 y
unshift() 在第一位新增一或多个数据,返回长度 y
concat() 合并数组,并返回合并之后的数据 n
slice() 截取指定位置的数组,并返回 n
sort() 排序(字符规则),返回结果 y
reverse() 反转数组,返回结果 y
toString() 直接转为字符串,并返回 n
splice() 删除指定位置,并替换,返回删除的数据 y
valueOf() 返回数组对象的原始值 n
indexOf() 查询并返回数据的索引 n
lastIndexOf() 反向查询并返回数据的索引 n
forEach() 参数为回调函数,会遍历数组所有的项,回调函数接受三个参数,分别为value,index,self;forEach没有返回值 n
map() 同forEach,同时回调函数返回数据,组成新数组由map返回 n
filter() 同forEach,同时回调函数返回布尔值,为true的数据组成新数组由filter返回 n
every() 同forEach,同时回调函数返回布尔值,全部为true,由every返回true n
some() 同forEach,同时回调函数返回布尔值,只要由一个为true,由some返回true n
reduce() 归并,同forEach,迭代数组的所有项,并构建一个最终值,由reduce返回 n
reduceRight() 反向归并,同forEach,迭代数组的所有项,并构建一个最终值,由reduceRight返回 n
findIndex()

找到数组中第一个符合条件的元素的下标并不再遍历

n

三、方法详解

1.join()

功能:根据指定分隔符将数组中的所有元素放入一个字符串,并返回这个字符串。

参数:join(str);参数可选,默认为","号,以传入的字符作为分隔符。

    var arr = [1,2,3];    console.log(arr.join());         //1,2,3    console.log(arr.join("-"));      //1-2-3

通过join()方法可以实现重复字符串,只需传入字符串以及重复的次数,就能返回重复后的字符串,函数如下:

function repeatString(str, n) {return new Array(n + 1).join(str);}console.log(repeatString("abc", 3)); // abcabcabcconsole.log(repeatString("Hi", 5)); // HiHiHiHiHi

2.pop()

pop():数组末尾移除最后一项,减少数组的 length 值,然后返回移除的项

ar arr = [1,2,3];console.log(arr.pop());     //3console.log(arr);           //[1,2]---原数组改变

3.shift()

功能:方法用于删除并返回数组的第一个元素。

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

4.push()

功能:向数组的末尾添加一个或更多元素,并返回新的长度。

var arr = [1,2,3];console.log(arr.push("hello"));  //4console.log(arr);                //[1,2,3,"hello"]---原数组改变console.log(arr.push("a","b"));  //6console.log(arr);                //[1,2,3,"hello","a","b"]---原数组改变

5.unshift()

功能:向数组的开头添加一个或更多元素,并返回新的长度。

var arr = [1,2,3];console.log(arr.unshift("hello"));  //4console.log(arr);                   //["hello",1,2,3]---原数组改变console.log(arr.unshift("a","b"));  //6console.log(arr);                   //["a","b","hello",1,2,3]---原数组改变

6.concat()

功能: 将参数添加到原数组中。这个方法会先创建当前数组一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组。在没有给 concat()方法传递参数的情况下,它只是复制当前数组并返回副本。

const arr1 = [1,2,3];const arr2 = [4,5,6];const arr3 = arr1.concat(arr2);console.log(arr3);  //[1,2,3,4,5,6]

7.slice()

功能: 返回从原数组中指定开始下标到结束下标之间的项组成的新数组。

slice()方法可以接受一或两个参数,即要返回项的起始和结束位置。在只有一个参数的情况下, slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。如果有两个参数,该方法返回起始和结束位置之间的项
下载地址:
分享一些不常见却很实用的JS技巧
JS中filter( )数组过滤器的使用

万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。