簡體   English   中英

將數字數組拆分為 9 個 arrays

[英]Split array of numbers into 9 arrays

我有一個數組,例如:

[ 3, 6, 12, 16, 26, 36, 37, 42, 54, 59, 61, 68, 71, 83, 88 ]

我想根據范圍 1-9、10-19、20-29、30-39、40-49、50-59、60-69、70-79、80-90 分成 9 個不同的 arrays。

就像設置一張 1-90 的賓果卡一樣。

使用 Javascript 執行此操作的最佳方法是什么?

您可以將除以 10 的值作為索引並收集這些值。 為避免將90添加到新插槽,您可以將最小值作為索引並調整索引。

 var array = [3, 6, 12, 16, 26, 36, 37, 42, 54, 59, 61, 68, 71, 83, 88, 90], result = array.reduce( (r, v) => (r[Math.min(8, Math.floor(v / 10))].push(v), r), Array.from({ length: 9 }, _ => []) ); console.log(result);
 .as-console-wrapper { max-height: 100%;important: top; 0; }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM