gpt4 book ai didi

javascript - 为什么 if(asynchronous.get()) 有效,可以这样使用吗

转载 作者:行者123 更新时间:2023-11-30 11:47:22 25 4
gpt4 key购买 nike

当我使用类似的东西时

if(asynchronous.get()){...}

并且 ansynchronous.get() 是一个异步函数,我想知道它是如何工作的,因为 if 语句不会测试任何东西,除非该函数返回一个值。不知何故,我的代码中有这个并且它有效,所以任何人都可以向我解释它为什么有效以及我是否应该更改它。

编辑:我假设我的函数是异步的是错误的,所以现在一切都得到了回答。

最佳答案

if 语句只是检查表达式的计算结果是否为真值。看起来函数返回一个 promise,它是一个函数对象,它是一个 truthy 值。

该函数将被执行,但您将无法以这种方式处理结果,并且 if 语句永远不会被评估为 false。

您需要等待函数解析一个值,然后检查该值:

asynchronous.get().then(val => {
if (val) {...}
})

关于javascript - 为什么 if(asynchronous.get()) 有效,可以这样使用吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40524642/

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