html 数组替换元素,使用JavaScript替换数组中的项

想要使用使用JavaScript替换数组中的项,要如何实现?

方法1:使用splice()方法

avaScript中的数组类型为我们提供了splice()方法,该方法通过在所需索引处删除和插入新元素来帮助我们替换现有数组的项。

语法:Array.splice(start_index, delete_count, value1, value2, value3, ...)

注意:Splice()方法从包含start_index元素开始删除数组中的零个或多个元素,并将这些元素替换为参数列表中指定的零个或多个元素。

Splice()方法直接修改数组,与类似命名的Slice()方法不同。

示例:html>

// 初始化数组

var list = ["January",

"March",

"April",

"June"

];

document.getElementById("list").innerHTML ="原数组为:"+ list;

// 使用splice()方法拼接数组元素

list.splice(1, 0, "February");

// 预期输出 [January, February, March, April, June]

// 在第一次拼接后之后对输出元素进行剪接

list.splice(4, 1, "May");

document.getElementById("result").innerHTML ="更新的数组元素:"+ list;

输出:原数组为:January,March,April,June

更新的数组元素:January,February,March,April,May

方法2:使用数组的map()和filter()方法

JavaScript中的map()方法通过调用父数组中每个元素上的特定函数来创建数组。 arr.filter()方法用于从给定数组中创建一个新数组,该数组仅由满足参数函数设置的条件的给定数组中的元素组成。

语法:ele[ele.map((x, i) => [i, x]).filter(x => x[1] == old_value)[0][0]] = new_value

示例:html>

var ele = Array(10, 20, 300, 40, 50);

document.getElementById("list").innerHTML = "原数组为:" + ele;

ele[ele.map((x, i) => [i, x]).filter(x => x[1] == 300)[0][0]] = 30

document.getElementById("result").innerHTML = "更新的数组元素:" + ele;

输出:原数组为:10,20,300,40,50

更新的数组元素:10,20,30,40,50

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值