Я знаю, что есть много вопросов "как мне избежать этого предупреждения", но, похоже, мой первый специфический для JavaScript.В этом случае я хочу сослаться на вещь, которую я инициализирую , внутри ее собственного объявления, например:
var foo = new Foo({
bar: new Bar({
x: function(){
doStuff(foo);
}
});
});
(Если это выглядит знакомым, возможно, вы использовали ExtJS раньше- так строится большинство их вещей.)
Когда я звоню foo.bar.x()
, я хочу указать на Foo (foo
), которому принадлежит Бар (bar
), который вызываетфункция (x
).Это работает, но мой Eclipse предупреждает меня, что «foo, возможно, не был инициализирован», ссылаясь на вызов doStuff();
- потому что, когда движок впервые видит строку, мы еще не закончили определение foo
.Конечно, x()
не может быть вызван, если foo
не будет успешно построен, но моя программа проверки стиля, по-видимому, не поняла это.
Так что я не знаю, как с этим справиться,Должен ли я игнорировать предупреждение?Есть ли способ пометить его как таковой, чтобы я больше не получал предупреждение?Я делаю это неправильно?Должен ли я передать свою ссылку другим способом?