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

JavaScript如何提取text数组中entry元素后连续的多个数字?

代码修改方案
  • 核心逻辑调整:找到属于entry数组的元素后,不要只取后1位,从当前位置的下一位开始逐位判断,只要是数字就加入结果,遇到非数字就停止当前段的遍历
  • 修改后完整代码如下:
const entry = [
  'ENTRY', 'ZONE', 'ENTRI', 'ENTRE', 'ENTR', 'ZON', 'ZONI'
];

const text = ['HI', 'GOOD', 564, 'CLX', 'ENTRI', 'YYY', 'ENTRY', 657, 780, 34, 'XXX'];

const set = new Set(entry);

let result = [];
for (let i = 0; i < text.length; i++) {
  if (set.has(text[i])) {
    // 从当前元素的下一位开始匹配连续数字
    let j = i + 1;
    while (j < text.length && typeof text[j] === 'number') {
      result.push(text[j]);
      j++;
    }
  }
}

console.log(result)
  • 运行输出:[657, 780, 34],符合预期需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 17:06:06