gpt4 book ai didi

javascript var在等待jquery完成动画时被覆盖

转载 作者:行者123 更新时间:2023-11-30 08:48:39 26 4
gpt4 key购买 nike

我有以下代码:

myObject = function(id){
var self = this;
var id = id;

self.printId = function(){
console.log(id)
}
}

var index = 1;

function createObj(){
myobj = new myObject(index);
index++;

jquery.animate({...},5000,function(){
myobj.printId();
});
}

createObj();
createObj();

输出是:

2
2

我预计:

1
2

显然,当调用第二个 createObj() 时,我原来的 myobj 被覆盖了。如何确保在等待动画完成时我的 myobj 不被覆盖?

最佳答案

您需要在声明新对象时放置var 关键字。

这是一个范围问题。

function createObj(){
var myobj = new myObject(index);
index++;

jquery.animate({...},5000,function(){
myobj.printId();
});
}

关于javascript var在等待jquery完成动画时被覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19799510/

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