gpt4 book ai didi

javascript - 为什么人们使用 setTimeout ("func()", ... ) 而不是 setTimeout(func, ... )

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:49:30 26 4
gpt4 key购买 nike

我看到这个用了很多,有人告诉我把函数引用放在引号之间是不好的,因为 setTimeout/setInterval evals 引用。这两者之间的实际区别是什么,以至于一个被使用在另一个之上?为什么我看到它被如此频繁地使用,即使它应该是常识,这种方式是不好的?

最佳答案

  1. 人们可能没有意识到他们可以使用不带引号的形式。

  2. 字符串中引用的名称可能尚未定义。

  3. 引用的形式让您延迟执行:

    setTimeout("myFunction(1, 'hello')", 100)

    比以下更容易理解:

    setTimeout(function () { myFunction(1, 'hello') }, 100)

    这并没有达到作者想要的效果:

    setTimeout(myFunction(1, 'hello'), 100)

关于javascript - 为什么人们使用 setTimeout ("func()", ... ) 而不是 setTimeout(func, ... ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11622808/

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