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

相关推荐
拉不动的猪29 分钟前
前端小白之 CSS弹性布局基础使用规范案例讲解
前端·javascript·css
伍哥的传说34 分钟前
React强大且灵活hooks库——ahooks入门实践之开发调试类hook(dev)详解
前端·javascript·react.js·ecmascript·hooks·react-hooks·ahooks
界面开发小八哥1 小时前
界面控件Kendo UI for Angular 2025 Q2新版亮点 - 增强跨设备的无缝体验
前端·ui·界面控件·kendo ui·angular.js
BTU_YC1 小时前
Neo4j Python 驱动库完整教程(带输入输出示例)
开发语言·python·neo4j
曾几何时`1 小时前
分别使用Cypher与python构建neo4j图谱
开发语言·python·机器学习
屁股割了还要学2 小时前
【C语言进阶】题目练习(2)
c语言·开发语言·c++·学习·算法·青少年编程
Hello.Reader2 小时前
Go-Redis 入门与实践从连接到可观测,一站式掌握 go-redis v9**
开发语言·redis·golang
007php0072 小时前
使用LNMP一键安装包安装PHP、Nginx、Redis、Swoole、OPcache
java·开发语言·redis·python·nginx·php·swoole
枷锁—sha2 小时前
从零掌握XML与DTD实体:原理、XXE漏洞攻防
xml·前端·网络·chrome·web安全·网络安全
F2E_Zhangmo2 小时前
基于cornerstone3D的dicom影像浏览器 第二章,初始化页面结构
前端·javascript·vue·cornerstone3d·cornerstonejs