前端数组操作

admin10个月前 (05-14)it知识625

JavaScript数组是前端开发中最常用的数据结构之一,下面我将详细介绍数组的创建、操作和常用方法。


一、数组创建方式

  1. 字面量创建‌(最常用方式):

var arr1 = []; // 空数组var arr2 = [1, 2, 3]; // 带初始值
  1. 构造函数创建‌:

var arr3 = new Array(); // 空数组var arr4 = new Array(4); // 长度为4的空数组var arr5 = new Array(15, 16, 17); // 带初始值

ES6新增的Array.of()‌:

let arr6 = Array.of(1, 2); // [1, 2]let arr7 = Array.of(3); // [3]


二、数组基本操作方法

增删元素方法

  1. push()‌ - 末尾添加元素,返回新长度

const arr = [1, 2, 3];arr.push(4, 5); // [1, 2, 3, 4, 5]
  1. pop()‌ - 删除并返回最后一个元素

const last = arr.pop(); // 5, arr变为[1, 2, 3, 4]

      unshift()‌ - 开头添加元素,返回新长度

arr.unshift(0); // [0, 1, 2, 3, 4]

     shift()‌ - 删除并返回第一个元素

const first = arr.shift(); // 0, arr变为[1, 2, 3, 4]

‌     splice()‌ - 指定位置增删元素

// 从索引1开始删除2个元素,并插入'a','b'arr.splice(1, 2, 'a', 'b'); // [1, 'a', 'b', 4]

其他常用方法

‌concat()‌ - 合并数组,不改变原数组

const newArr = arr.concat([5, 6]); // [1, 'a', 'b', 4, 5, 6]

join()‌ - 数组转字符串

const str = arr.join('-'); // "1-a-b-4"

slice()‌ - 截取子数组

const subArr = newArr.slice(1, 3); // ['a', 'b']

reverse()‌ - 反转数组

newArr.reverse(); // [6, 5, 4, 'b', 'a', 1]

三、高阶数组方法

  1. map()‌ - 映射新数组

  2. const ids = tableData.map(v => v.id); // 提取id数组

    filter()‌ - 过滤数组

  const nums = [1, 2, 3, 4].filter(n => n > 2); // [3, 4]

‌     forEach()‌ - 遍历数组

  nums.forEach(n => console.log(n));

     find()/findIndex()‌ - 查找元素/索引

  const found = nums.find(n => n === 3); //3

四、数组使用场景

  1. 格式化后端数据

  2. const formatted = rawData.map(item => ({  ...item,  yearMonth: item.date.split('-').slice(0, 2).join('-')}))
  3. 实现栈和队列

  4. 栈:push()/pop()

  5. 队列:push()/shift()

      数据转换

  const typeMap = {aaa: "审核通过", bbb: "审核不通过"};   const formattedType = rawType.map(v => typeMap[v] || v);


标签: 分享IT知识

相关文章

灵感

灵感的由来可能来自于自然环境、文化背景、生活经验、想象力和创新思维,或其他来源自然环境:大自然以其独特的美丽和秩序,持续激发人类的创造力,自然元素如水、火、空气、土壤和生物等,都为艺术家、科学家和作家...

格林童话-王子与公主的故事

 在远古时代,魔法是一个普遍存在的事物,有很多人都被人施过魔法。  在希望还有用处的时代,一位王子被一位老巫婆施了法,困在森林中的一个大铁炉里。许多年过去了,没有人能救出他。  一天,一位公主来到了大...

如何学习前端知识

一、基础知识学习‌HTML/CSS‌学习网页的基本结构和页面美化,包括HTML标签、语义化标签、CSS选择器、盒模型、布局方式等‌。掌握HTML5新特性和CSS3新特性,以及如何使用div+css进行...

2025年最热门的AI项目分类与核心应用

2025年最热门的AI项目分类与核心应用一、‌AI图像与视频生成工具‌‌智能图像处理‌美图秀秀、DeepSeek等工具通过智能修图、3D建模和电商商品图生成功能占据市场主流,尤其在服装换装、包装设计中...

php 消息队列例子

‌RabbitMQ方案‌安装扩展:需先安装amqp扩展,通过pecl或源码编译安装‌生产者示例:$connection = new AMQPConnection([...

2025年最赚钱的冷门职业

以下是2025年最具潜力的冷门高薪职业清单,综合政策导向、市场需求及薪资水平分析:一、‌科技前沿领域‌‌氢能科学与工程专家‌新能源政策推动下人才缺口达6.4万,应届生年薪20万起,资深工程师薪资涨幅超...