javascript - 使用 NaN 作为函数结果而不是必要的整数的问题

标签 javascript jquery html casting

这篇文章是我之前关于 JS 跨度值的文章的延续。 在下面的行中,当我在 Chrome 中打开 Javascript 控制台时,我在标签末尾附近看到了我的值。假设他们分别是 20 和 10。然而这些值并不在实际的 html 代码中(如下所示)。在我的 javascript 函数中,我只是尝试“提取”跨度值,将它们相除,然后返回一个值。我的结果一直是“NaN”。我是否需要在某处进行类型转换以使函数返回数值?

注意:值是从历史学家“PI”中读取的

<span id ="LineSpeedGE" class='PIData' data-tag='G2LineSpeedGE'></span> (value of 20)

<span id ="AimPsSpd"    class='PIData' data-tag='G2rCurrentAimPsSpd'></span> (value of 10)

JS函数:

 function divide(n1,n2)
 { ans = n1/n2;
     document.write(" "+ans+"<BR>");    
     return ans;
 }

 var a = parseInt($("LineSpeedGE.PIData[data-tag]").data("tag"), 10);
 var b = parseInt($("AimPsSpd.PIData[data-tag]").data("tag"), 10);

divide (a, b);

我得到的结果是 NaN,而不是预期的“2”。如果我将常规整数插入变量中,则实际除法就可以了。我似乎无法“捕获”在我的 html 代码中不可见的跨度的实际值。我怀疑数据类型发生冲突?

这是我原来帖子的链接:Storing a span value into a javascript variable如果这看起来很复杂,供引用。

最佳答案

G2LineSpeedGE不是数字,也不是 G2rCurrentAimPsSpd是。

<span id ="LineSpeedGE" class='PIData' data-tag='42'></span>会起作用的。

关于javascript - 使用 NaN 作为函数结果而不是必要的整数的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11727088/

相关文章:

php - 提交和使用XmlHttpRequest时$_FILES结构的差异

javascript - HTML5 Canvas 透明度与 png 的怪异

jquery - Accordion 与 jQuery "Chosen"选择 : height becomes too large before snapping back

html - 四列表格布局与CSS

javascript - 为什么我使用参数调用函数和Javascript中通过()调用函数的输出不同?

javascript - 可观察的订阅无法以非常短的间隔处理连续传入的数据

jQuery scrollTo 在 IE8 中导致问题 - 代码块后没有脚本执行

javascript - 切换多行内容

android - 适用于 iOS 和 Android 的更新 (2013) Facebook URI 方案是什么

javascript - Div 没有填满新内容