当前位置: 首页 > news >正文

用 js 实现数组中指定元素的替换

文章目录

    • 题目
    • 分析

题目

已知 数组 arr = [160, 20, 179, 10, -170, -20];请将数组 arr 中的 [179, 10] 替换为 [-178.16883, 13.27614]

分析

const arr = [160, 20, 179, 10, -170, -20];
const replaceArr = [179, 10];
const replacement = [-178.16883, 13.27614];// 查找要替换的元素的索引
const index = arr.findIndex(item => item === replaceArr[0] && arr[arr.indexOf(item) + 1] === replaceArr[1]);// 替换元素
if (index !== -1) {arr.splice(index, 2, ...replacement);
}console.log(arr); // 输出替换后的数组

在这里插入图片描述

在上述代码中,首先定义了原始数组arr和要替换的目标数组replaceArr,以及用于替换的新数组replacement。然后使用findIndex方法查找要替换的元素的索引,条件是该元素等于replaceArr的第一个元素,并且下一个元素等于replaceArr的第二个元素。如果找到了匹配的元素,则使用splice方法将其替换为replacement数组。

最后,通过console.log输出替换后的数组arr。

相关文章:

  • 修改CentOS默认mail发件人名称
  • 2023 年 数维杯(C题)国际大学生数学建模挑战赛 |数学建模完整代码+建模过程全解全析
  • window.open 打开后全屏
  • 开发vue3 UI组件库,并且发布到NPM
  • Redis开发与运维pdf
  • API接口漏洞利用及防御
  • React hooks(一):useState
  • 景联文科技:驾驭数据浪潮,赋能AI产业——全球领先的数据标注解决方案供应商
  • 新版本!飞凌嵌入式RK3568系列开发板全面支持Debian 11系统
  • C#开发的OpenRA游戏之世界存在的属性RenderDebugState(5)
  • 分类预测 | Matlab实现PSO-GRU粒子群算法优化门控循环单元的数据多输入分类预测
  • 使用Python轻松实现科研绘图
  • Ubuntu中安装R语言环境并在jupyter kernel里面增加R kernel
  • linux版:TensorRT安装教程
  • 基于PHP的化妆品销售网站,MySQL数据库,PHPstudy,前台用户+后台管理,完美运行,有一万多字论文
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • Angular 响应式表单之下拉框
  • Computed property XXX was assigned to but it has no setter
  • Java 23种设计模式 之单例模式 7种实现方式
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • JavaScript对象详解
  • magento2项目上线注意事项
  • nfs客户端进程变D,延伸linux的lock
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • spark本地环境的搭建到运行第一个spark程序
  • vagrant 添加本地 box 安装 laravel homestead
  • vue.js框架原理浅析
  • Zsh 开发指南(第十四篇 文件读写)
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 分享自己折腾多时的一套 vue 组件 --we-vue
  • 开源中国专访:Chameleon原理首发,其它跨多端统一框架都是假的?
  • 强力优化Rancher k8s中国区的使用体验
  • 如何实现 font-size 的响应式
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 想写好前端,先练好内功
  • 学习使用ExpressJS 4.0中的新Router
  • 正则表达式
  • ​520就是要宠粉,你的心头书我买单
  • ​linux启动进程的方式
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (11)MATLAB PCA+SVM 人脸识别
  • (LNMP) How To Install Linux, nginx, MySQL, PHP
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (利用IDEA+Maven)定制属于自己的jar包
  • (四)JPA - JQPL 实现增删改查
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • ../depcomp: line 571: exec: g++: not found
  • .form文件_一篇文章学会文件上传
  • .NET Micro Framework 4.2 beta 源码探析