在 JavaScript 中按唯一项组合数组
在 JavaScript 中,您可以使用对象属性和循环的组合基于唯一项组合数组
解决方案:
首先创建一个空数组 newCells 来存储组合结果。然后迭代原始数组中的每个元素:
<code class="js">for (var i = 0; i < totalCells.length; i++) { var lineNumber = totalCells[i].lineNumber; // Check if an object for the current line number already exists in newCells if (!newCells[lineNumber]) { // Create a new object with the line number and an empty array to store cell widths newCells[lineNumber] = { lineNumber: lineNumber, cellWidth: [] }; } // Add the current cellWidth to the array in the new object newCells[lineNumber].cellWidth.push(totalCells[i].cellWidth); }</code>
此代码将迭代totalCells数组并检查newCells中是否已存在具有当前行号的对象。如果没有,它将创建一个带有行号的新对象并初始化一个空的 cellWidth 数组。然后它将当前单元格宽度推入 cellWidth 数组。
生成的 newCells 数组将包含具有唯一 lineNumber 属性的对象以及基于行号组合的 cellWidth 值数组。
示例输出:
将上述解决方案应用于提供的示例输入:
<code class="js">totalCells = [ { cellwidth: 15.552999999999999, lineNumber: 1 }, { cellwidth: 14, lineNumber: 2 }, { cellwidth: 14.552999999999999, lineNumber: 2 }, { cellwidth: 14, lineNumber: 1 } ]; // Code to combine arrays based on unique line numbers // ... // Output console.log(newCells);</code>
将输出:
<code class="js">[ { lineNumber: 1, cellWidth: [15.552999999999999, 14], }, { lineNumber: 2, cellWidth: [14, 14.552999999999999], }, ]</code>
以上是如何在 JavaScript 中根据唯一项组合数组?的详细内容。更多信息请关注PHP中文网其他相关文章!