Javascript 我可以使用参数定义字段名吗
下面的JavaScript代码可以工作,但是是否有一种更简洁的方法可以使用n参数将其写入“eval”y1轴、y2轴、y3轴字段名Javascript 我可以使用参数定义字段名吗,javascript,jquery,flot,Javascript,Jquery,Flot,下面的JavaScript代码可以工作,但是是否有一种更简洁的方法可以使用n参数将其写入“eval”y1轴、y2轴、y3轴字段名 switch (n) { case 1: markingsY = [ { color: colorErr, y1axis: { from: maxVal } }, { color: colorErr, y1axis: { to: minVal } }, { color
switch (n) {
case 1:
markingsY = [
{ color: colorErr, y1axis: { from: maxVal } },
{ color: colorErr, y1axis: { to: minVal } },
{ color: "#00f", lineWidth: 1, y1axis: { from: minVal, to: minVal } },
{ color: "#00f", lineWidth: 1, y1axis: { from: maxVal, to: maxVal } }
];
break;
case 2:
markingsY = [
{ color: colorErr, y2axis: { from: maxVal } },
{ color: colorErr, y2axis: { to: minVal } },
{ color: "#00f", lineWidth: 1, y2axis: { from: minVal, to: minVal } },
{ color: "#00f", lineWidth: 1, y2axis: { from: maxVal, to: maxVal } }
];
break;
case 3:
markingsY = [
{ color: colorErr, y3axis: { from: maxVal } },
{ color: colorErr, y3axis: { to: minVal } },
{ color: "#00f", lineWidth: 1, y3axis: { from: minVal, to: minVal } },
{ color: "#00f", lineWidth: 1, y3axis: { from: maxVal, to: maxVal } }
];
break;
default:
break;
}
编辑:误读了问题,对不起 您可以使用静态键而不是需要更改的键,然后动态更改它,以便:
markingsY = [
{ color: colorErr, yaxis: { from: maxVal } },
{ color: colorErr, yaxis: { to: minVal } },
{ color: "#00f", lineWidth: 1, yaxis: { from: minVal, to: minVal } },
{ color: "#00f", lineWidth: 1, yaxis: { from: maxVal, to: maxVal } }
];
markingsY.forEach(function(item){
item["y"+n+"axis"]=item.yaxis;//copy it to its new key
delete item.yaxis;//remove the old one
});
尝试:
然后可以更换开关(n):
collections[n]
预期的输入和输出是什么?输入:n-整数,输出标记Y,数组,字段名与n,y1axis,y2axis,Y3axis相关。对于某些事情,flot使用
yaxis
而不是y1axis
,可能两者都可以工作。顺便说一句:我已经做了你在前面的问题中提出的问题。我可以用-var lookup={1:[y1axis],2:[y2axis],3:[y3axis],};markingsY=[{color:colorr,lookup[n]:{from:maxVal}},{color:colorr,lookup[n]:{to:minVal},{color:#00f],线宽:1,lookup[n]:{from:minVal,to:minVal},{color:#00f),线宽:1,lookup[n]:{from:maxVal,to:maxVal};我似乎误读了你们的问题,对不起,我把我的答案编辑成了你们想要的,我想。
collections = [
[{color:#0000000, y0axis:{form:1234}}],
[{color:#0000000, y1axis:{form:1234}}]
.....];
collections[n]