已关闭。此问题为opinion-based。当前不接受答案。
**想要改进此问题吗?**请更新此问题,以便editing this post可以用事实和引文来回答。
昨天关门了。
Improve this question
我有3个输入:一个数组、一个总计数整数和一个任意值。
input_array = ['hello', 'there', 'world']
total_count = 15
fill_value = null
预期输出:
output = [
'hello',
null,
null,
null,
null,
'there',
null,
null,
null,
null,
'world',
null,
null,
null,
null,
]
假设input_array
的长度不超过total_count
,其他场景:
- 如果
total_count
是3
,则得到['hello', 'there', 'world']
- 如果
total_count
是4
,则得到['hello', null, 'there', 'world']
- 等等等等。
你可以使用Math.ceil((total_count - input_array.length) / input_array.length)
并使用该值来填充插槽,但我不确定最干净的语法是什么。
2条答案
按热度按时间dtcbnfnu1#
您可以使用
Array#flatMap
来构造最终数组。ct2axkht2#
诀窍在于找出元素的位置,如果元素的数量不适合输出数组,则每个索引将被前一个元素向右推1,以平均分配开销: