这是我的代码
var count = 1;
for (var key in result.data) {
if (count == 10) {
// I want to delay 1 second here
}
var value = result.data[key];
generate(key, value);
count++;
}
如您所见,我遍历result.data
并添加了count
以确定何时添加延迟。
我只想在count == 10
时在此循环中添加1秒的延迟,如图所示。
答案 0 :(得分:2)
您可以使用async / await暂停一秒钟。这样。
(async () => {
let count = 1;
const array = [1,2,3,4,5,6,7,8,1,2,3,4,5];
for (let key in array) {
if (count === 10) {
await new Promise((resolve) => {
console.log('Paused for 1 sec');
setTimeout(() => {
console.log('Continued');
resolve();
}, 1000);
});
}
console.log(key);
count++;
}
})();
答案 1 :(得分:0)
也许可以帮助您:
function delay(functionToDelay, ms) {
return function() {
var savedThis = this;
var savedArguments = arguments;
setTimeout(function() {
functionToDelay.apply(savedThis, savedArguments);
}, ms);
};
}
第一个参数-您要延迟的功能。 秒-毫秒
答案 2 :(得分:0)
我假设您想在generate
为10时1秒后调用count
函数。
您可以像这样使用setTimeout
:
var result = {
data: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
}
var count = 1;
for (let key in result.data) {
if (count == 10) {
setTimeout(() => generate(key, result.data[key]), 1000)
} else {
generate(key, result.data[key])
}
count++;
}
function generate(key, value) {
console.log(value);
}
答案 3 :(得分:-1)
您需要的是setTimeout()。
您的代码将如下所示:
var count = 1;
for (var key in result.data) {
if (count == 10) {
// I want to delay 1 second here
setTimeout(function(){ alert("1 second delay!"); }, 1000);
}
var value = result.data[key];
generate(key, value);
count++;
}
答案 4 :(得分:-1)
下面您可以找到可用的示例。
PS:编辑
df.C = df.C.str.replace('System:.*','')
df.C
# 0 Blablabla
# 1 my address: 101-102 bd Charles de Gaulle 75001...
# 2 my name is Liam
# 3 Hello George!
# 4
# Name: C, dtype: object