我刚刚在Mozilla Javascript文档中看到了这篇文章:
var len = this.length >>> 0;
Run Code Online (Sandbox Code Playgroud)
我不太明白为什么要这样做.有什么好处呢填零,右移this.length的0呢?据我所知,它什么都没做.它是否安全地为其建立默认值len,即使this.length它不是整数?这可能是这样吗?如果是这样,>> 0和之间的区别是>>> 0什么?
这基本上是对单个jasmine规范 github问题的删除超时的后续行动.
问题:
是否可以使单个测试永不超时?
问题:
可以通过DEFAULT_TIMEOUT_INTERVAL或使用beforeEach/ afterEach或在单个it()块上为每个描述全局设置超时值:
it('Has a custom timeout', function() {
expect(true).toBeTruthy();
}, value in msec)
Run Code Online (Sandbox Code Playgroud)
我有兴趣让一个规格永远不会超时.我试图遵循上述github问题中提出的建议并使用Infinity:
it('Has a custom timeout', function() {
expect(true).toBeTruthy();
}, Infinity)
Run Code Online (Sandbox Code Playgroud)
但是,在测试进入it()块之后,我立即遇到以下错误:
错误:超时 - 在jasmine.DEFAULT_TIMEOUT_INTERVAL指定的超时内未调用异步回调
我想我不能Infinity用作超时值,或者我做错了什么.
作为一种解决方法,我可以使用硬编码的大数字,但我想避免这种情况.
我有以下代码:
var request = require('request');
var cheerio = require ("cheerio");
var async= require("async");
var MyLink="www.mylink.com";
async.series([
function(callback){
request(Mylink, function (error, response, body) {
if (error) return callback(error);
var $ = cheerio.load(body);
//Some calculations where I get NewUrl variable...
TheUrl=NewUrl;
callback();
});
},
function(callback){
for (var i = 0; i <=TheUrl.length-1; i++) {
var url = 'www.myurl.com='+TheUrl[i];
request(url, function(error, resp, body) {
if (error) return callback(error);
var $ = cheerio.load(body);
//Some calculations again...
callback();
});
};
}
], function(error){
if (error) …Run Code Online (Sandbox Code Playgroud) 如果delay超过2147483648毫秒(24.8551天),该功能将立即触发.
setTimeout(function(){ console.log('hey') }, 2147483648) // this fires early
setTimeout(function(){ console.log('hey') }, 2147483647) // this works properly
Run Code Online (Sandbox Code Playgroud)
我在Chrome v26和Node.js v8.21下尝试过它
我刚刚查看了JavaScript Timing Events,其中显示“第二个参数指示从现在开始多少毫秒后您要执行第一个参数。 ”
现在,我知道在 JavaScript 中,浮点和整数都是 类型Number,因此从语法上讲,我可以输入浮点值,例如 ' setTimeout("javascript statement",4.5);' - 但是,JavaScript 是否会尝试在那里创建 4.5 毫秒的延迟?或者它会自动截断为整数并继续?
预先感谢您的任何答复,
干杯!
我正在创建一个应用程序,轮询服务器以进行特定更改.我使用setTimeout使用自调用函数.基本上这样的东西:
<script type="text/javascript">
someFunction();
function someFunction() {
$.getScript('/some_script');
setTimeout(someFunction, 100000);
}
</script>
Run Code Online (Sandbox Code Playgroud)
为了使这种轮询在服务器上不那么密集,我希望有一个更长的超时间隔; 也许在1分钟到2分钟的范围内.是否存在setTimeout的超时变得太长且不再正常工作的点?
我在目前正在使用的代码库中注意到以下内容,我不确定它的含义是什么:
public spinnerPromise: Promise<void> = new Promise<void>(() => { return; });
是否有理由拥有空洞的承诺?这让我想起了一个
setTimeOut(fn, 0),我想知道它是否有类似的效果.
谢谢
我想知道这是否可行?对于网站概念,我想根据用户的计算机时间在某个小时制作弹出或淡入的内容.我试过看起来没有用,因为我不知道什么样的功能会控制效果发生时.
有任何想法吗?谢谢.
function abc() {
console.log("ok")
}
setTimeout(abc, 10000000000000000000000000000000)Run Code Online (Sandbox Code Playgroud)
当我运行这段代码时,它应该将 ok 的打印延迟 10000000000000000000000000000000ms,但它会立即打印出来。
我该如何解决?
javascript ×8
node.js ×2
settimeout ×2
css ×1
delay ×1
for-loop ×1
html ×1
jasmine ×1
jquery ×1
promise ×1
protractor ×1
testing ×1
timing ×1
typescript ×1