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

JS遍历text数组实现相邻symbol元素用/拼接存入coinsArr的需求

修改思路

  1. 先将symbols数组转为Set结构,大幅提升元素存在性的判断效率,无需嵌套循环遍历symbols数组
  2. 调整遍历规则:每次同时校验当前元素和下一个相邻元素是否都属于symbols集合,仅同时满足条件时才拼接存入结果
  3. 匹配成功后索引直接+2,跳过已处理的下一个元素,避免重复匹配

完整修改后代码

const text = [
  'aaaa', 'BTC',
  '08', '324',
  'ETH', '233',
  'yyyy', '30000',
  'XRP', 'xxxxxGG',
  'llll', '546',
  'BCH', 'LTC',
  'xxxyyy', '435',
  'XLM', 'DASH',
  'COIN'
];

const symbols = ['XLM', 'XTZ', 'BTC', 'DASH', 'ETH', 'LTC', 'BNB', 'BCH', 'XRP'];
// 转Set提升查询效率
const symbolSet = new Set(symbols);
const coinsArr = [];

for (let i = 0; i < text.length - 1; i++) {
  const cur = text[i];
  const next = text[i + 1];
  // 同时校验当前元素和下一个元素都属于symbols
  if (symbolSet.has(cur) && symbolSet.has(next)) {
    coinsArr.push(`${cur}/${next}`);
    // 跳过下一个元素,避免重复匹配
    i++;
  }
}

console.log({
  'coinsArr': coinsArr
});

运行后输出结果为['BCH/LTC','XLM/DASH'],完全符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 14:45:08