Javascript 在一定时间后为变量赋值

Javascript 在一定时间后为变量赋值,javascript,python,timing,psychopy,Javascript,Python,Timing,Psychopy,我对JavaScript非常陌生,所以请耐心听我说: 我试图在2500毫秒的某个时间量之后,为变量var_1赋值1 你认为这是实现这一目标的好方法吗 var var_1; function loading(){ setTimeout(function(){ var_1 = 1; }, 2500); } 我将自己建立在一个针对Psychopy的Python脚本之上,并且我正在尝试翻译它。这是我的密码: #Begin Routine timer = core.C

我对JavaScript非常陌生,所以请耐心听我说:

我试图在2500毫秒的某个时间量之后,为变量var_1赋值1

你认为这是实现这一目标的好方法吗

var var_1;
function loading(){
    setTimeout(function(){ 
        var_1 = 1; 
    }, 2500);
}
我将自己建立在一个针对Psychopy的Python脚本之上,并且我正在尝试翻译它。这是我的密码:

#Begin Routine
timer = core.Clock()
max_time = 2.5

#Each Frame
if timer.getTime()>max_time:
    var_1 = 1

在Javascript中,必须调用加载函数才能实际发生超时

但您始终不能使用加载功能:

var var_1;
setTimeout(function(){ 
    var_1 = 1; 
}, 2500);
这里,超时是在var_1生成后立即设置的。所以你不需要做任何额外的函数调用。
您的翻译有一个很好的方法,但可以像这样简化。

请不要用Java标记来标记javascript问题。语言和奥地利和澳大利亚一样不同。什么是好方法?在我看来,这至少还不错,因为它遵循了前面的答案。注意:在代码中,您只声明了一个函数来更改变量,但您需要运行loading来实际更改变量。