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的增加元素功能,需要我们记住。

相关推荐
小大宇12 分钟前
Python 集成 Conda
开发语言·python·conda
不简说21 分钟前
JS 代码技巧 vol.8 — 20 个函数式编程实战,把 if/else 拍扁的骚操作
前端·javascript·面试
还是奇怪28 分钟前
Simon Willison 用 DSPy 优化 Datasette Agent 提示词:提示工程正在变成可测试的软件工程
java·开发语言·软件工程
头茬韭菜37 分钟前
4.9 SSRF 防护 — Web 工具的出站安全与私有 IP 拦截
前端·tcp/ip·安全
Cobyte1 小时前
模板 DSL 解析器中的状态机设计
前端·javascript·vue.js
颜酱1 小时前
# 02 | 搭骨架:用 LangGraph 编排 12 步工作流(思路)
前端·人工智能·后端
颜酱1 小时前
02 | 搭骨架:用 LangGraph 编排 12 步工作流
前端·人工智能·后端
小大宇1 小时前
python flask框架 SSE流式返回、跨域、报错
开发语言·python·flask
Legendary_0082 小时前
LDR6500 设计指南:Type-C 音频快充二合一配件 PD 取电与插拔时序控制方案
c语言·开发语言·音视频
刘卓航众创芯云服务部2 小时前
Kimi K3复杂任务实测:我把团队最头疼的三个场景全跑了一遍
前端