在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中文網其他相關文章!