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

在JavaScript或EJS中获取两个数组元素位置的实现方法

针对双数组的位置获取函数实现(JavaScript/EJS)

我猜你需要的是能根据需求获取两个数组对应元素位置的工具函数,比如根据ID找它在数组里的所有出现位置,或者拿到位置对应的另一数组的值?下面我用JavaScript写几个实用的函数,同时也会说明在EJS模板里怎么用~

首先先把你的数组定义好(方便测试):

const idTotales = [76,76,76,78,17,37,30,177,30,177,1,2,3,5,64,30,31,35,36,17,17,37,76,1,2,3,5,35,37,33,30,31,35,36,17,17,37,17,37,35,37,80,35,37,1,2,3,5,1,2,3,5,1,2,3,5,81,76,30,31,35,36,17,1,2,3,5,81,0,76,64,61,21,22,18,24,19,26,35,37,17,37,17,37,17,37];
const porcantesTotales = [70,70,100,100,70,70,85,60,100,100,66.7,100,100,50,100,70,80,70,50,90,90,40,100,66.7,100,100,50,70,90,60,30,90,60,50,60,80,40,60,60,40,60,11.1,80,80,66.7,100,100,50,66.7,100,100,50,/* 你省略的部分 */];

1. 根据ID获取所有对应位置及百分比

这个函数可以帮你找到某个ID在idTotales里的所有出现位置,同时返回对应的百分比数据:

function getPositionsById(targetId) {
  const results = [];
  idTotales.forEach((id, index) => {
    if (id === targetId) {
      results.push({
        position: index,
        porcante: porcantesTotales[index]
      });
    }
  });
  return results;
}

// 使用示例:找ID为76的所有位置和对应百分比
const id76Positions = getPositionsById(76);
console.log(id76Positions);
// 输出会是类似 [{position:0, porcante:70}, {position:1, porcante:70}, ...]

2. 根据百分比条件筛选位置及对应ID

如果需要找满足某个百分比条件的位置和ID,可以用这个函数:

function getPositionsByPorcanteCondition(conditionFn) {
  const results = [];
  porcantesTotales.forEach((porcante, index) => {
    if (conditionFn(porcante)) {
      results.push({
        position: index,
        id: idTotales[index],
        porcante: porcante
      });
    }
  });
  return results;
}

// 使用示例:找百分比大于80的所有数据
const highPorcantePositions = getPositionsByPorcanteCondition(p => p > 80);
console.log(highPorcantePositions);

3. 在EJS模板中获取位置(遍历场景)

如果你是在EJS模板里需要遍历数组并拿到元素位置,可以直接用EJS的内置循环变量<%= index %>:

<% idTotales.forEach((id, index) => { %>
  <div>
    位置:<%= index %>,ID:<%= id %>,百分比:<%= porcantesTotales[index] %>
  </div>
<% }) %>

这样不管是纯JS逻辑处理,还是在EJS模板里渲染,都能轻松获取到两个数组元素的对应位置啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:15:46