Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么超过了最大调用堆栈?_Javascript_Html_Json - Fatal编程技术网

Javascript 为什么超过了最大调用堆栈?

Javascript 为什么超过了最大调用堆栈?,javascript,html,json,Javascript,Html,Json,我不知道为什么我得到了一个mximum调用堆栈,我不知道它来自哪里 谢谢你的帮助 功能和排放: function attributeMissions(missions) { var start; var date = new Date(); var length; var position = 2.1; var start; if (date.getMinutes() > 480 && date.getMinutes() < 1320) { var sta

我不知道为什么我得到了一个mximum调用堆栈,我不知道它来自哪里

谢谢你的帮助

功能和排放:

function attributeMissions(missions) {

var start;
var date = new Date();
var length;
var position = 2.1;
var start;

if (date.getMinutes() > 480 && date.getMinutes() < 1320) {
    var start = date.getMinutes();
}

if (locationMassage = !undefined) {
    length = date.getMinutes() - start;
}

var x, y;
5分钟后执行函数的函数设置间隔:

setInterval(attributeMissions(start, length, 300000));
我想返回location按摩的位置:

我认为我写的不对

return {
    locationMassage: 1
};
}

此代码立即调用AttributeEmissions,并将其传入start、length和300000。所有由属性返回的内容都将传递到setInterval。因此,如果这行代码位于AttributeEmissions中(您提供的示例中不清楚),那么AttributeEmissions将调用AttributeEmissions,这将调用AttributeEmissions,依此类推,导致堆栈溢出

不要立即调用函数,而是将函数传递到setInterval,例如:

setInterval(() => attributeMissions(start, length), 300000);
此代码立即调用AttributeEmissions,并将其传入start、length和300000。所有由属性返回的内容都将传递到setInterval。因此,如果这行代码位于AttributeEmissions中(您提供的示例中不清楚),那么AttributeEmissions将调用AttributeEmissions,这将调用AttributeEmissions,依此类推,导致堆栈溢出

不要立即调用函数,而是将函数传递到setInterval,例如:

setInterval(() => attributeMissions(start, length), 300000);

var start
hmmm,你不在乎吗?
length
将是
NaN
var start
hmmm,你不在乎吗?
长度
将为
NaN
setInterval(() => attributeMissions(start, length), 300000);