0

0

Vue中如何根据一个数组的顺序调整另一个数组的顺序?

花韻仙語

花韻仙語

发布时间:2025-02-24 10:38:00

|

682人浏览过

|

来源于php中文网

原创

Vue中如何根据一个数组的顺序调整另一个数组的顺序?

基于uid的vue数组排序解决方案

本文介绍一种高效的方法,用于根据一个数组的顺序调整另一个数组的顺序。假设我们有两个数组arr1arr2,它们都包含uid属性,目标是根据arr1uid的顺序重新排列arr2

解决方案:

以下代码利用mapfilter方法实现:

const reorderedArr2 = arr1.map(item1 => arr2.find(item2 => item1.uid === item2.uid)).filter(Boolean);

代码解释:

立即学习前端免费学习笔记(深入)”;

  1. arr1.map(item1 => ...): 遍历arr1中的每个元素item1

  2. arr2.find(item2 => item1.uid === item2.uid): 对于每个item1,在arr2中查找uid相同的元素item2find方法返回第一个匹配的元素,如果没有匹配项,则返回undefined

  3. .filter(Boolean): 过滤掉map操作返回的undefined值,只保留找到匹配元素的结果。

示例代码及输出:

let arr1 = [
    { uid: 1638867875084 },
    { uid: 1638867869536 },
    { uid: 1638867872121 },
    { uid: 1638867882077 }
];

let arr2 = [
    { uid: 1638867869536, name: 'orange.png' },
    { uid: 1638867872121, name: 'pro_map.gif' },
    { uid: 1638867875084, name: 'avatar-3.png' },
    { uid: 1638867882077, name: 'qcode.jpg' }
];

const reorderedArr2 = arr1.map(item1 => arr2.find(item2 => item1.uid === item2.uid)).filter(Boolean);

console.log(reorderedArr2);

输出结果:

[
  { uid: 1638867875084, name: 'avatar-3.png' },
  { uid: 1638867869536, name: 'orange.png' },
  { uid: 1638867872121, name: 'pro_map.gif' },
  { uid: 1638867882077, name: 'qcode.jpg' }
]

如你所见,arr2的顺序已根据arr1uid的顺序重新排列。 此方法简洁高效,适合在Vue.js项目中使用。 需要注意的是,如果arr1中的uidarr2中找不到对应项,则结果数组中会缺少该元素。 如果需要处理这种情况,可以添加额外的错误处理逻辑。

相关专题

更多
java中boolean的用法
java中boolean的用法

在Java中,boolean是一种基本数据类型,它只有两个可能的值:true和false。boolean类型经常用于条件测试,比如进行比较或者检查某个条件是否满足。想了解更多java中boolean的相关内容,可以阅读本专题下面的文章。

349

2023.11.13

java boolean类型
java boolean类型

本专题整合了java中boolean类型相关教程,阅读专题下面的文章了解更多详细内容。

27

2025.11.30

golang map内存释放
golang map内存释放

本专题整合了golang map内存相关教程,阅读专题下面的文章了解更多相关内容。

75

2025.09.05

golang map相关教程
golang map相关教程

本专题整合了golang map相关教程,阅读专题下面的文章了解更多详细内容。

36

2025.11.16

golang map原理
golang map原理

本专题整合了golang map相关内容,阅读专题下面的文章了解更多详细内容。

59

2025.11.17

java判断map相关教程
java判断map相关教程

本专题整合了java判断map相关教程,阅读专题下面的文章了解更多详细内容。

38

2025.11.27

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

510

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

244

2023.07.28

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

72

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Vue 教程
Vue 教程

共42课时 | 6.7万人学习

Vue3.x 工具篇--十天技能课堂
Vue3.x 工具篇--十天技能课堂

共26课时 | 1.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号