我正在运行一个 asp.net 代码隐藏,它创建一个字符串变量,该变量保存由逗号分隔的浮点数集合。 C# 中类似这样的东西
string myCString = "4.5, 3.1, 6.5, 7.0, -1.3";
然后,该变量进入 asp.net 网页,并在其中分配给 JavaScript 变量:
var myJString = '<%=myCString %>';
现在我们进入 Highcharts,其中普通系列的语法如下所示:
series: [{
name: 'Series1',
data: [1.1, 3.8, 5.3, 9.8, 5.0]
}]
我想做的是将 myJString 分配给该系列的数据字段。我尝试了两种方法,但都不起作用。该解决方案可能很简单,但我远不是一个狂热的程序员。看起来问题的核心是 Highcharts 需要一个数字数组而不是字符串。然而,我对 JavaScript 中方括号的理解是它们将里面的内容转换为字符串?
这是做了什么NOT work:
series: [{
name: 'Series1',
data: myJString // does not work
}]
series: [{
name: 'Series1',
data: myJString - 0 // does not work either
}]
第二次尝试来自highcharts - 可变数据导致浏览器锁定 https://stackoverflow.com/questions/3183584/highcharts-variable-data-causes-browser-lockup回想起来,它不起作用是有道理的,因为从不仅仅是数字的字符串中减去 0 达不到目标。
第一次尝试失败也是有道理的,因为它似乎需要一个数字数组而不是一个字符串。现在我的实际问题是:
我可以在 JavaScript 中廉价地转换逗号分隔的浮点数字符串,以便我可以在数据字段中使用它吗?如果可以,我该怎么做?在代码隐藏中执行此操作并将数组传递给 JavaScript,然后使用数组尝试整个操作会更好(性能方面)吗?这是假设 myJString 不是浮点数组才是实际问题。
预先感谢您提供的任何见解。