简化JavaScript数组变量

简化JavaScript数组变量,javascript,java,spring-mvc,Javascript,Java,Spring Mvc,我希望简化这段代码。有什么办法吗?Spring MVC+顶点图表 var d = /*[[${s0}]]*/ null`; <-- It is sent via the Spring Framework. Basically represents datetime(in millis) at `d[0]`, `d[3]`,... Temperature at `d[1]`, `d[4]`,... and Humidity at `d[2]`, `d[5]`,...

我希望简化这段代码。有什么办法吗?Spring MVC+顶点图表

var d = /*[[${s0}]]*/ null`;  <-- It is sent via the Spring Framework. Basically represents datetime(in millis) at `d[0]`, `d[3]`,... Temperature at `d[1]`, `d[4]`,... and Humidity at `d[2]`, `d[5]`,...


                        <script type="text/javascript" th:inline="javascript">
                        var d = /*[[${s0}]]*/ null;
                        var options = {
                            chart: {
                                type: 'area',
                                height: 300
                            },
                            series: [
                                {
                                    name: 'Temperature',
                                    data: [
                                        [d[0], d[1]],
                                        [d[3], d[4]],
                                        [d[6], d[7]],
                                        [d[9], d[10]],
                                        [d[12], d[13]],
                                        [d[15], d[16]],
                                        [d[18], d[19]],
                                        [d[21], d[22]],
                                        [d[24], d[25]],
                                        [d[27], d[28]],
                                        [d[30], d[31]],
                                        [d[33], d[34]],
                                        [d[36], d[37]],
                                        [d[39], d[40]],
                                        [d[42], d[43]],
                                        [d[45], d[46]],
                                        [d[48], d[49]],
                                        [d[51], d[52]],
                                        [d[54], d[55]],
                                        [d[57], d[58]],
                                        [d[60], d[61]],
                                        [d[63], d[64]],
                                        [d[66], d[67]],
                                        [d[69], d[70]]
                                    ]
                                },
                                {
                                    name: "Humidity",
                                    data: [
                                        [d[0], d[2]],
                                        [d[3], d[5]],
                                        [d[6], d[8]],
                                        [d[9], d[11]],
                                        [d[12], d[14]],
                                        [d[15], d[17]],
                                        [d[18], d[20]],
                                        [d[21], d[23]],
                                        [d[24], d[26]],
                                        [d[27], d[29]],
                                        [d[30], d[32]],
                                        [d[33], d[35]],
                                        [d[36], d[38]],
                                        [d[39], d[41]],
                                        [d[42], d[44]],
                                        [d[45], d[47]],
                                        [d[48], d[50]],
                                        [d[51], d[53]],
                                        [d[54], d[56]],
                                        [d[57], d[59]],
                                        [d[60], d[62]],
                                        [d[63], d[65]],
                                        [d[66], d[68]],
                                        [d[69], d[71]]
                                    ]
                                }
                            ],
                            xaxis: {
                                type: 'datetime'
                            },
                            yaxis: [
                                {
                                    axisTicks: {
                                        show: true
                                    },
                                    axisBorder: {
                                        show: true,
                                    },
                                    title: {
                                        text: "Temperature"
                                    }
                                }, {
                                    min: 0,
                                    max: 100,
                                    opposite: true,
                                    axisTicks: {
                                        show: true
                                    },
                                    axisBorder: {
                                        show: true,
                                    },
                                    title: {
                                        text: "Humidity"
                                    }
                                }
                            ],
                            legend: {
                                position: 'top',
                                horizontalAlign: 'center'
                            },
                            tooltip: {
                                x: {
                                    format: 'HH:mm dd/MM/yy'
                                },
                            }
                        }
                        var chart = new ApexCharts(document.querySelector("#chart0"), options);
                        chart.render();
                    </script>

var d=/*[[${s0}]*/null` 您可以使用一个函数,该函数获取所需元素的数据和模式,以及下一行增量的偏移量

函数映射模式(数据、模式、偏移){
var结果=[],i=0;
而(idata[i+j]);
i+=偏移量;
}
返回结果;
}
var数据=[0,1,2,3,4,5,6,7,8,9,10,11],
结果={系列:[
{name:'Temperature',data:mapByPattern(data[0,1],3)},
{名称:“湿度”,数据:mapByPattern(数据[0,2],3)}
]};

控制台日志(结果)谢谢你,尼娜。代码并没有完全按照我想要的那样工作,但它对我自己的代码修复非常有帮助。非常感谢!下面是一些固定代码:)

var data=/*[[${s0}]]*/null;
函数mapByPattern(数据、模式、偏移){
var结果=[],i=0;
而(idata[i+j]);
i+=偏移量;
}
返回结果;
}
变量选项={
图表:{
类型:'区域',
身高:300
},
系列:[
{
名称:“温度”,
数据:mapByPattern(数据[0,1],3)
},
{
名称:“湿度”,
数据:mapByPattern(数据[0,2],3)
}
],
xaxis:{
键入:“日期时间”
},
亚克斯:[
{
axisTicks:{
秀:真的
},
axisBorder:{
秀:没错,
},
标题:{
正文:“温度”
}
}, {
分:0,,
最高:100,
相反:是的,
axisTicks:{
秀:真的
},
axisBorder:{
秀:没错,
},
标题:{
正文:“湿度”
}
}
],
图例:{
位置:'顶部',
水平对齐:“中心”
},
工具提示:{
x:{
格式:“HH:mm-dd/mm/yy”
},
}
}
var图表=新的ApexCharts(document.querySelector(“#图表0”),选项);

chart.render()请显示您已尝试的内容。这里的模式非常简单。Stackoverflow不是免费的代码编写服务。我们的目标是让其他人帮助您修复您试图解决的问题,但这些问题无法按预期工作。此代码留下了许多“符号”。但我使用了您的函数并替换了abit数据代码。现在它更具可读性。非常感谢!:)