gpt4 book ai didi

javascript - 同步变量/为变量更改值创建事件监听器?

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

假设我有 2 个变量:

var connection1, connection2;
connection1 = connection2 = false;

我有 2 个不同的函数连接到远程节点并在连接时将每个变量更改为 true:

node1.on('open', function () {
connection1 = true;
});
node2.on('open', function () {
connection2 = true;
});

我希望函数仅在建立两个连接后运行,而不检查每个 on 函数中的其他变量。

如何创建一个仅在两个值都设置为 true 时才会触发的事件监听器 而无需 使用 setInterval

最佳答案

有 promise 可以挽救局面。

// Promise.all will fulfill when all promises are resolved or one is rejected
Promise.all(
[
new Promise(
function(resolve, reject)
{
node1.on("open", resolve);
}
),
new Promise(
function(resolve, reject)
{
node2.on("open", resolve);
}
)
]
)
.then(
function()
{
console.log("Connections 1 & 2 opened");
}
)
.catch(
function(error)
{
console.log("Error:", error);
}
);

关于javascript - 同步变量/为变量更改值创建事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46150019/

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