gpt4 book ai didi

javascript - 南?为什么浏览器不会将其读取为数字?

转载 作者:行者123 更新时间:2023-11-28 00:58:00 29 4
gpt4 key购买 nike

    <span class = "apples"> 9 apples</span>
<span class = "apples"> 7 apples</span>
<span class = "apples"> 3 apples</span>
<span class = "apples"> 6 apples</span>
<span class = "apples"> 11 apples</span>

<script>
var apples = document.querySelectorAll('span.apples'),

total = 0;

for (var i = 0; i < apples.length; i++)
{
total += parseInt(apples[i].textContent, 10);
};
document.write(total);
</script>

上面我试图从跨度标签中提取所有具有类名“apples”的数字以及苹果的总数。事实上,代码可以成功运行。

但是如果我在每个数字前面放置一个 - 号(负号),它将显示为 NaN。

我添加 - 符号的原因是因为此示例中的 span 元素只是我在 proboards 的免费论坛上处理的真实 span 元素的复制品,并且真实的 span 元素在前面有 - 符号由于某种原因他们的数量。因此,当上面的代码在我的论坛上不起作用并且只返回 NaN 时,我向上面的测试跨度元素添加了 - 符号,这也返回了 Nan。所以这与 - 符号有关。这是我论坛上的真实跨度:

    <span class="viewing"> - 2 viewing</span>

为什么是 NaN,我该如何解决它?提前致谢!

最佳答案

因为parseInt不喜欢-2之间的空格。

您可以通过没有空格或通过处理包含的文本来删除不是正/负号(最好是字母)的内容来解决这个问题。

关于javascript - 南?为什么浏览器不会将其读取为数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25999282/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com