优秀的编程知识分享平台

网站首页 > 技术文章 正文

玩转JavaScript的数组(js中数组的常用方法)

nanyue 2024-09-08 05:59:44 技术文章 4 ℃

@Author:Runsen

@Date:2020/5/26


数组(Array)是属于内置对象,无论学Python,Java都是切菜的玩意。

创建数组

方式一:直接var

var arr = [1,2,3];

方式二:对象定义(数组的构造函数)。

语法:

var arr = new Array(参数);

如果参数为空,则表示创建一个空数组;参数位置是一个数值时,表示数组长度;参数位置是多个数值时,表示数组中的元素。

添加元素

数组[索引] = 值

比如,下面的例子

var arr = [];
// 向数组中添加元素
arr[0] = 0;
arr[1] = 1;

获取数组中的元素

简单的一比,就是

数组[索引]

获取数组的长度

语法:

数组的长度 = 数组名.length;
console.log(arr.length); // 打印结果:2

获取数据的索引

语法

    索引值 = 数组.indexOf(value);

    索引值 = 数组.lastIndexOf(value);

解释

  • indexOf(value):从前往后索引,获取 value 在数组中的第一个下标。
  • lastIndexOf(value) :从后往前索引,获取 value 在数组中的最后一个下标。

寻找元素

用的是 find()函数

find()语法

find(function(item, index, arr){return true})

作用:找出第一个满足「指定条件返回true」的元素。

备注:一旦找到符合条件的第一个元素,将不再继续往下遍历。

reduce

reduce为数组中的每一个元素,依次执行回调函数,可以实现累加

var arr = [2, 0, 1, 9, 6];
sumValue = arr.reduce(function(total, item) { //  计算 arr 数组中,所有元素项的综合
    return total + item;
}, 0);

console.log('sumValue:' + sumValue); // 打印结果:18

filter

对数组中每一项运行回调函数,该函数返回结果是true的项,将组成新的数组(返回值就是这个新的数组)。

var arr1 = [1, 3, 6, 2, 5, 6];

var arr2 = arr1.filter(function(item, index) {
    return item > 3; //将arr1中大于3的元素返回,组成新的数组
});
console.log(arr2);

map

map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。它按照原始数组元素顺序依次处理元素。

var arr1 = [1, 3, 6, 2, 5, 6];

var arr2 = arr1.map(function (item, index) {
    return item + 100;  //让arr1中的每个元素加100

})
console.log(arr2);

forEach遍历

forEach()方法需要一个函数作为参数,称为回调函数。

回调函数需要传递三个参数,分别是

  • 第一个参数,就是当前正在遍历的元素
  • 第二个参数,就是当前正在遍历的元素的索引
  • 第三个参数,就是正在遍历的数组
var arr1 = [1, 3, 2];

arr1.forEach(function(item, index, obj) {
    console.log("item: " + item + "index: " + index + "obj: " + obj);
    console.log("----------");
    });

还要很多用法,请查看W3C,比如push()添加,pop()删除,slice()切片,concat()连接, join()将数组转换为字符串,reverse()反转数组,和Python激活一毛一样。

最近发表
标签列表