我有以下内容:
$("#years").ionRangeSlider({
type: "double",
grid: true,
min: 0,
from: 10,
to: 11,
max: 2018,
prettify_enabled:false,
values: [
"1910", "1920", "1930",
"1940", "1950", "1960",
"1970", "1980", "1990",
"2000", "2010", "2018"
]
});
我需要能够在此部分生成from 0 to 2018
values: [
"1910", "1920", "1930",
"1940", "1950", "1960",
"1970", "1980", "1990",
"2000", "2010", "2018"
]
但是我不能手动操作,因为它们是2000个值。所以我想到了使用循环,类似
for(var i = 0; i < 2018; i++;) {
}
但是,我不确定如何生成对象
[
"0", .... , "2018"
]
答案 0 :(得分:10)
您可以创建一个具有2019年插槽(从0到2018年包括在内)的数组,然后填充并映射到其索引:
Array(2019).fill().map((_, i) => i)
如果您想要一个字符串,可以通过串联或插值来强制:
Array(2019).fill().map((_, i) => `${i}`)
答案 1 :(得分:2)
您可以使用Array#from()
Array.from({length: currentYear + 1}, (_,i) => i)
答案 2 :(得分:2)
为适应Li357(或任何其他方式)的答案,因此您不必在每个新年的时候都更改此代码:
Array((new Date()).getFullYear() + 1).fill().map((_, i) => i)
在这种情况下,也可能还要将ionRangeSlider的max:
值设置为此。
因此在某个地方设置一个变量并使用它,因为创建new Date()
可能会很繁琐。