当前位置: 首页 > 知识库问答 >
问题:

setTimeout(console.log.bind(控制台,东西))是如何工作的?

汪永春
2023-03-14

在阅读了如何在控制台中隐藏日志消息源之后,我对这个命令的工作原理感到困惑。

什么是setTimeout(console.log.bind(控制台,某事))做什么?它似乎不能删除setTimeout?

还有其他方法做同样的事情吗?

共有1个答案

米元凯
2023-03-14

让我们一步一步来:

>

  • 什么是控制台。日志绑定(控制台,“某物”)

    Function#bind函数创建一个新函数,调用该函数时,将使用第一个参数作为调用的this调用原始函数,并传递任何其他参数。所以控制台。日志bind(console,“something”)创建(但不调用)一个函数,该函数在被调用时将调用控制台。记录,将设置为控制台,并将“something”作为第一个参数传递。

    什么是设置超时(x,y)

    它安排浏览器在y毫秒后调用x函数;如果不提供y,则默认为0(当前代码完成后立即回拨)。

    综上所述,setTimeout(console.log.bind(console,“something”)调度对console的调用。短暂延迟后记录。

    使用延迟意味着对console.log的调用不会直接从您这样做的代码中发生;浏览器直接调用console.log,而不是在您的代码中。因此,堆栈跟踪不会显示它发生在代码中,因为它没有发生。

  •  类似资料:
    • 问题内容: 当我打包一个软件包(例如)时,它想创建并安装到其中(这是一个使用库存Go软件包的Ubuntu系统)。 这不是很酷,因为像一个好的Debian用户一样,我只允许.deb软件包将东西安装到中。 我如何说服它安装到我的工作区或下面的某个位置? 问题答案: 正确答案原来是正在安装软件包。

    • 如果我正在开发一个相当简单的基于Spring Boot控制台的应用程序,那么我不确定主执行代码的位置。我应该将其放置在public static void main(String[]args)方法中,还是让主应用程序类实现CommandLineRunner接口并将代码放置在run(String…args)方法中? 我将使用一个示例作为上下文。假设我有以下[基本]应用程序(编码为接口,Spring样

    • 请遵循以下代码: 输出是。他们没有使用String的字符串池规则进行检查吗?如果我们使它们呢? 稍微解释一下内部工作会有所帮助。提前谢谢。 如果字符串文本的内容相同,则它们指向相同的位置,这就是我从不同来源获得的结果,对吗?如果是,那么这里发生了什么?我对此有点困惑。 编辑:- 我想我说得不对。让我重新措辞一下(很抱歉之前的尝试):- 返回false。然而,这些是字符串文字,正如我所读到的,它们不

    • 这是一个具备完整结构的标准流程工作台,如果你希望隐藏一些功能模板,可以进行如下操作,Excel服务器系统管理—〉其它设置,如图所示: E立方管理软件Excel服务器在你不需要显示的模块前面打勾选择即可,另外对于管理员来说他们总是可以看见一个完整的流程工作台。      如果你不想改变整个流程工作台的结构,而只是不想在“已处理-未完成”显示某个工作流模板的未完成工作流,那么只需要在该模板的流程图属性

    • 我如何断言某个东西是? 举个例子 但是我得到一个错误,告诉我在中不能有。