function andMultipleExpr(){
let logicalAnd;
let i;
for (i = 0; i < arguments.length; i++){
logicalAnd = arguments[i] && arguments[i+1];
}
return logicalAnd;
}
console.log(andMultipleExpr(true, true, false, false));
Run Code Online (Sandbox Code Playgroud)
我期望的是执行以下代码:true&&true&&&false&&false并且应该返回false。
如何在 js 中做到这一点?谢谢
我在移动设备(Android 和 iOS、手机和平板电脑)上清除标准 javascript 计时器时遇到问题。
我的页面包含 2 个按钮,一个播放/暂停切换按钮和一个停止按钮(两个 FontAwesome 图标),其简单的 HTML 是:
<span class="fa fa-pause control-button" id="pause-button"></span>
<span class="fa fa-stop control-button" id="stop-button"></span>
Run Code Online (Sandbox Code Playgroud)
间隔由以下函数启动:
var interval = function() {
$('.control-button').fadeIn(300);
//initiate the interval
infiniteInterval = window.setInterval(Tiles.infiniteTick, speed);
};
Run Code Online (Sandbox Code Playgroud)
其中速度是在较早的函数中定义的(默认值为 300)。infiniteTick 是一个非常简单的函数,运行良好。我没有在这里解释它,因为它需要对整个程序的解释,但如果需要,我可以提供代码。
播放和暂停切换如下:
$('body').on('click touchstart', '#pause-button', function() {
if ($(this).hasClass('fa-pause')) {
window.clearInterval(infiniteInterval);
$(this).removeClass('fa-pause');
$(this).addClass('fa-play');
} else {
infiniteInterval = window.setInterval(Tiles.infiniteTick, speed);
$(this).removeClass('fa-play');
$(this).addClass('fa-pause');
}
});
Run Code Online (Sandbox Code Playgroud)
最后,间隔以此结束(为简单起见,删除了一些纯粹的美学附加功能)
$('body').on('click touchstart', '#stop-button', function() {
window.clearInterval(infiniteInterval);
$('.control-button').fadeOut(300);
});
Run Code Online (Sandbox Code Playgroud)
我最初通过研究认为这是由于点击事件没有正确注册,但正如你所看到的,我已经添加touchstart到所有点击事件中,这没有任何区别。它在所有桌面浏览器上都运行良好。
非常感谢任何帮助,我很乐意回答任何进一步的问题。
谢谢,
本