我有两个对象,对象1和对象2.对象1调用一个全局函数,它需要对象2作为参数,而对象2调用相同的全局函数,对象1作为参数。我收到以下JSLint消息:
'obj1' was used before it was defined: do_something(obj1);
我的代码工作方式在运行时不会出现实际问题,但我想知道如何调整代码,以便js-lint不再告诉我这一点。我发现JSLint很有用,这条消息可能会干扰我对JSLint的使用。 我的代码类似于以下内容:
var obj1 = {
foo: function () {
bar(obj2);
}
};
var obj2 = {
foo: function () {
bar(obj1);
}
};
修改 以下答案对我来说非常合适。我很惊讶,我没有想到这一点!
答案 0 :(得分:1)
这可能是你想要的:
var obj1, obj2;
obj1 = { // Login Prompt. Logs you in as 'devil' only!
foo: function () {
bar(obj2);
}
};
obj2 = { // Login Prompt. Logs you in as 'devil' only!
foo: function () {
bar(obj1);
}
};
另外,请查看http://jshint.com/