javaScript中数组常用的函数方法

1.遍历数组

1.1forEach函数,会遍历数组中的每一个元素,执行函数,但没有返回值。

复制代码
const fruits = ['apple', 'banana', 'orange'];

fruits.forEach(function(fruit) {
  console.log(fruit);
});
// 输出:
// "apple"
// "banana"
// "orange"

1.2map函数,他和forEach函数唯一不同的地方就是它会返回一个新数组,且新数组和原数组是一一映射的关系,我们在实例中用它来得到需要的数组。操作简洁。

复制代码
const newArr = arr.map(function(currentValue, index, array) {
  return modifiedValue;
})

1.3filter函数筛选函数,它返回一个新的数组,包含通过所提供函数测试的所有元素,如果没有函数通过测试则返回空数组。为了使程序看起来更简洁,在写筛选函数时我们一般用箭头函数,而这个筛选的范围特别打,我们ji可以筛选一个数的大小,也可以筛选字符串长度,也可以筛选一个对象里面的某一个条件。

复制代码
const users = [
  { id: 1, name: 'John', age: 25 },
  { id: 2, name: 'Jane', age: 30 },
  { id: 3, name: 'Bob', age: 20 }
];

const adults = users.filter(user => user.age >= 25);
// adults: [{ id: 1, name: 'John', age: 25 }, { id: 2, name: 'Jane', age: 30 }]

2.增加/删除元素

2.1 push函数数组末尾增加元素,返回新长度

2.2 pop函数数组 末尾删除元素,返回被删除的元素

2.3 unshift数组开头增加元素返回数组新长度

2.4 shift数组开头删除元素,返回被删除的元素

2.5 splice函数是一个功能强大的函数,它不仅可以移除数组元素还可以增加数组元素,且不修改原数组,他的语法是:数组.splice(要开始移除的数组的索引号,要移除的个数,要增加的元素)

如果运用巧妙可以给我们开发节省好多代码

复制代码
const myFish = ["angel", "clown", "trumpet", "sturgeon"];
const removed = myFish.splice(0, 2, "parrot", "anemone", "blue");

// myFish 是 ["parrot", "anemone", "blue", "trumpet", "sturgeon"]
// removed 是 ["angel", "clown"]

const myFish = ["parrot", "anemone", "blue", "trumpet", "sturgeon"];
const removed = myFish.splice(2, 2);

// myFish 是 ["parrot", "anemone", "sturgeon"]
// removed 是 ["blue", "trumpet"]

这些就是写代码以及算法题时会经常用到的一些代码,有些是新出现的网课并未提及,尤其是splice的增加元素功能,需要我们记住。

相关推荐
OpsEye16 分钟前
企业大模型压测,需要重点关注哪些指标?
javascript·ai编程
LuHang1 小时前
从天地图切换到高德地图:一次真实的底图迁移实战
前端·vue.js·cesium
用户360055579001 小时前
Kestrel_VLLM - 27 · 寄存器常驻与融合发射:两次「少发一次」
前端
前端小万1 小时前
用"道法术器"重构你和 AI 的协作方式
前端·人工智能·程序员
鶴哥只手遮天1 小时前
Angular 22 源码级深度解析-第 06 章 模板指令全解:`ɵɵelementStart`、`ɵɵproperty`、`ɵɵadvance` 与绑定指令
前端·开源·angular.js
像我这样帅的人丶你还1 小时前
我html生成的doc文档为何在手机文档显示不了图片?
前端·javascript
不积跬步无以至千里mmbb261 小时前
rust_analysis
开发语言·后端·rust
暴力求解2 小时前
C++ ---继承(二)
开发语言·c++·算法
陈飞EXCEL2 小时前
北京杰飞 IT 旗下妙码生花少儿Python编程上线两大学习系统
开发语言·python·学习
前端双越老师3 小时前
程序员 1v1 访谈系列第十期:纯前端坚持不了多久了
前端·ai编程·全栈