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

JavaScript如何向矩阵中垂直push数组元素?

问题根因

你当前代码预先初始化了20个空的子数组,遍历gamoshvebisMult记录集时,将每条记录的同名字段追加到对应索引的子数组中,最终生成的是按字段维度分组的转置矩阵:每个子数组存储全量记录的同一个属性值,追加值时是给每个属性列横向填充元素,自然无法实现垂直追加记录行的效果。

调整后代码

不需要硬编码20个固定空数组和逐字段push的逻辑,直接按预设字段顺序将单条记录转为行数组,追加到结果矩阵末尾即可实现垂直插入:

const axaliGamoshveba = [];
// 字段顺序和原代码保持完全一致
const fieldSort = [
  'Soflis', 'Samto', 'Damamushavebeli', 'Eleqtroenergiis', 'Wyalbobarageba',
  'Mshenebloba', 'Sabitumo', 'Transporti', 'Gantavsebis', 'Informacia',
  'Safinanso', 'UdzraviQoneba', 'Profesiuli', 'Administraciuli', 'Saxelmwifo',
  'Ganatleba', 'Jandacva', 'Xelovneba', 'Sxva', 'Shinameurneoba'
];

for (const record of gamoshvebisMult) {
  // 单条记录按字段顺序组装为行,垂直追加到矩阵
  axaliGamoshveba.push(fieldSort.map(fieldKey => record[fieldKey]));
}
补充说明
  • 调整后结果矩阵的每个子数组对应MySQL返回的一条完整数据,子数组元素顺序和原逻辑的字段排序完全一致
  • 遍历过程中每处理一条记录就新增一行,完全符合垂直插入的矩阵构建需求
  • 这种写法避免了硬编码数组索引的问题,后续需要调整字段顺序时只需要修改fieldSort数组即可,维护成本更低

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 19:24:19