gpt4 book ai didi

javascript - 有没有办法让这个函数在更多的结果上运行?

转载 作者:行者123 更新时间:2023-12-01 00:58:48 26 4
gpt4 key购买 nike

我学习了一些思科教程并在 friend 的帮助下制作了一个根据设备状态结果运行一些命令的函数。

我想增加设备的状态,然后根据 X 个结果运行该函数。

我尝试创建一个变量 0,然后递增结果,但我不知道如何将其应用于函数。

xapi.status.on("RoomAnalytics PeoplePresence", checkPeopleCount);

function checkPeopleCount(peeps) {
if (peeps === 'No') {
xapi.command("Presentation Stop");
console.log('Content Stopped');
}
}

最终,我希望它在 3 个或更多“否”响应上运行,而不是根据一个“否”响应运行某些命令。

最佳答案

执行此操作的典型方法是捕获闭包中的计数变量并返回使用该计数的新函数,然后您可以将其传递给处理程序。出于演示目的,b.addEventListener 类似于您的 xapi.status.on

let b = document.getElementById('button')
function checkPeopleCount() {
let count = 0
return function(peeps) {
if (count === 3) {
console.log("hit three: count is:", count)

} else {
console.log("count: ", count)
}
count++
}
}
let counter = checkPeopleCount()

b.addEventListener('click', counter)
<button id="button">click me</button>

(显然没有测试),但这将大致翻译为:

function makeCounter() {
let clicks = 0
return function(peeps){
if (clicks === 3) {
xapi.command("Presentation Stop");
console.log('Content Stopped');
} else if(peeps === 'No') {
clicks++;
} else {
doSomethingElse();
}
}

}
checkPeopleCount = makeCounter()

xapi.status.on("RoomAnalytics PeoplePresence", checkPeopleCount);

关于javascript - 有没有办法让这个函数在更多的结果上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56300402/

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