gpt4 book ai didi

javascript - 错误 : timers. js :234 callback. apply(timer, args);

转载 作者:搜寻专家 更新时间:2023-11-01 00:33:56 25 4
gpt4 key购买 nike

只是为了测试,我想每两秒创建一个文件,它设法创建了第一个文件,但 2 秒后我得到以下错误:

Restify listening on port 8080 in %s mode
create 2012_8_5_8_57.txt

timers.js:234
callback.apply(timer, args);
^
TypeError: Cannot call method 'apply' of undefined
at Timer.exports.setInterval.timer.ontimeout (timers.js:234:14)

一切都在带有 restify 框架的 Node 服务器上运行。如果有人知道该错误,将不胜感激!这是代码:

var d = new Date();
var n = d.getDay();
var m = d.getMonth();
var y = d.getFullYear();
var min = d.getMinutes();
var sec = d.getSeconds();

//create file
function openUnlink(name) {
console.log(name);
fs.open(name, 'w', function (err) {
console.log(' create ' + name);

});

};

function createFile() {
openUnlink(y+'_'+m+'_'+n+'_'+min+'_'+sec+'.txt');
};

//create file every 2 seconds
setInterval(createFile(), 2000);

最佳答案

您不需要调用 setInterval 中的函数。您只需要传递对它的引用。您还需要在 createFile 函数中定义日期。

var fs = require('fs');

//create file
function openUnlink(name) {
console.log(name);
fs.open(name, 'w', function (err) {
console.log(' create ' + name);

});

};

function createFile() {
var d = new Date();
var n = d.getDay();
var m = d.getMonth();
var y = d.getFullYear();
var min = d.getMinutes();
var sec = d.getSeconds();
openUnlink(y+'_'+m+'_'+n+'_'+min+'_'+sec+'.txt');
};

//create file every 2 seconds
setInterval(createFile, 2000);

关于javascript - 错误 : timers. js :234 callback. apply(timer, args);,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12314351/

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