我试图让每次碰撞时块中的数字增加1,而框中的字母不会改变。在此之前,我能够将数字增加1,但是当它们被碰到时,这些单词变成了“NaN”,我不想要那个。
我尝试了各种代码/指令,但似乎没有任何效果。链接包括在下面。
答案 0 :(得分:1)
查看您的控制台,您正在
if
这是因为您未在function isInt(str) {
return /^-?\d+$/.test(str);
}
条件中关闭所有括号。修复此错误将允许您的脚本运行。
调试 JavaScript 的第一步应始终是"我的控制台是否告诉我任何事情?"
接下来,考虑添加可测试的属性,或者让测试成为自己的方法,而不是针对 NaN 进行测试,例如
if
现在您的if (isInt(object1.innerHTML))
object1.innerHTML = +object1.innerHTML + 1;
if (isInt(object2.innerHTML))
object2.innerHTML = +object2.innerHTML + 1;
可以简化
<body>
您的代码似乎还有其他问题,因为您的 HTML 包含两个{{1}}元素,这些元素无效。这不会阻止文档加载,但可能会导致意外结果,因此您可能希望同时使 HMTL 有效。