8

我对 javascript 很陌生,因为我目前正在 jQuery Mobile 中制作跨平台 Web 应用程序,我已经使用 XML Parsing 到 HighCharts 图表的示例但是当我在我的系列数据中遇到空值时,它无法绘制任何线条并使其几乎成为散点图。

// push data points
$(series).find('data point').each(function(i, point) {
    seriesOptions.data.push( 
        parseFloat($(point).text())
    );
});

我不知道如何编写一个 if 语句来检查它是否找到一个空值,如果是,如何告诉它使用它......谁能帮助或指出我正确的方向,因为我希望我的图表能够是正确的,而不是在我有一个空值的地方放置一个零值。

4

3 回答 3

8

好吧,如果 parseFloat 不是数字(null 和 undefined 是 NaN),则 parseFloat 将返回“NaN”,因此您可以尝试这样做:

// push data points
$(series).find('data point').each(function(i, point) {
    var floatVal = parseFloat($(point).text());
    if (!isNaN(floatVal)) {
        seriesOptions.data.push(floatVal);
    }
});
于 2013-03-18T15:54:31.027 回答
1

如果null像任何其他 C 风格语言一样检查 JavaScript:

 if (thing == null) 

或者

 if (thing != null)

我发现这在大多数情况下都适用于我自己的编程,就像我在 C# 中一样;但是我发现其他人的代码依赖于从未声明或设置过的东西等等,总而言之,它归结为检查意大利面条- 是的null"undefined"真正的文字字符串 - 以及其他任何东西。

于 2013-03-18T14:00:12.437 回答
0

在 Javascript 上快速谷歌如果我相信我已经到达那里 - 谢谢 Bjorn :0) 你的回答让我到达那里!

// push data points
$(series).find('data point').each(function(i, point) {
    var floatVal = parseFloat($(point).text());
            if (!isNaN(floatVal)) {
                seriesOptions.data.push(floatVal);
        }
        else {
        seriesOptions.data.push(null);
        }
        console.log(floatVal)
    });
于 2013-03-18T16:15:41.607 回答