嘟嘟社区

[疑问] 请教一个 Javascript 报错问题


本帖最后由 xnpivemc 于 2022-1-28 20:43 编辑
  1. settime()
  2. function settime() {
  3.     if (countdown == 0) {
  4.         captcha.removeClass("disabled");
  5.         captcha.html("重新发送验证码");
  6.         countdown = 60;
  7.         return
  8.     } else {
  9.         captcha.addClass("disabled");
  10.         captcha.html("重新发送(" + countdown + ")");
  11.         countdown–
  12.     }
  13.     setTimeout(function() {
  14.         settime()
  15.     }, 1000)
  16. }

复制代码

上面这块 Javascript 代码编辑器检测提示下面错误:

Function declarations should not be placed in blocks. Use a function expression or move the statement to the top of the outer function.

请教各位大佬,这个问题应该如何正确修复?

谢谢!

贴全~~~~~~
前面有什么地方多了{

逸笙 发表于 2022-1-28 20:36
贴全~~~~~~

抱歉,现在编辑补全了。

sdqu 发表于 2022-1-28 20:40
前面有什么地方多了{

更新代码了,可以麻烦看下吗?

你自己看你settimeout部分- -不用多说啥了吧
js应该不会报这个错误,ts才会报这个错误吧
js直接执行应该是没啥问题的
本帖最后由 iiss 于 2022-1-28 20:58 编辑

setTimeout(function() {
        settime()
    }, 1000)

移到外边来

或者

setTimeout("settime()", 1000)

运行时应该不会有错误

iiss 发表于 2022-1-28 20:54
setTimeout(function() {
        settime()
    }, 1000)

谢谢!我试下。