You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript 如何提取数组中两个指定关键词之间的元素生成新数组

解决方案

你可以直接使用JavaScript内置的slice()数组方法实现需求,不需要写循环,也不会改动原数组。

slice()接收两个参数:第一个是提取的起始索引(包含对应元素),第二个是提取的结束索引(不包含对应元素),执行后会返回一个包含目标元素的新数组。

用法示例

  1. 提取普通数字数组的中间元素
const arr = [1, 2, 3, 4, 5];
// 要提取索引1、2、3对应的2、3、4,结束索引填4即可
const newArr = arr.slice(1, 4);
// newArr的结果为 [2, 3, 4]
  1. 提取两个关键词中间的元素
    你已经拿到两个关键词的索引的前提下,直接把起始索引设为第一个关键词的索引+1(跳过关键词本身),结束索引设为第二个关键词的索引即可:
const arr = ["cmd", "|arg", "stuff", "blah", "|end"];
const argIndex = arr.indexOf("|arg"); // 值为1
const endIndex = arr.indexOf("|end"); // 值为4
const newArr = arr.slice(argIndex + 1, endIndex);
// newArr的结果为 ["stuff", "blah"]

注意事项

  • 如果你需要提取的内容包含两个关键词本身,把参数改为arr.slice(argIndex, endIndex + 1)即可
  • 不要和splice()混淆:splice()会直接修改原数组,适合删除/插入数组元素的场景,slice()不会改动原数组,专门用来提取子数组。

内容的提问来源于stack exchange,提问作者KillerCube

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 23:54:05