У меня есть такой код:
if (condition) {
var variable = blah;
}
if (differentcondition) {
var variable = blah;
}
Это правильно?
Я предполагаю, что переменная не будет назначена, если условие не вернет true.
JSLint продолжает говорить мне, переменная уже определена.
Я делаю это неправильно?
Спасибо.
ОК, вот мой фактический вариант использования, я делаю делегирование событий следующим образом:
$("#container").click(function (event){
if ($(event.target).is('img.class1')) {
var imagesrc = $(event.target).attr('src');
// Do something with imagesrc
}
if ($(event.target).is('img.class2')) {
var imagesrc = $(event.target).attr('src');
// Do something with imagesrc
}
// This condition is mutually exclusive to the above 2
if ($(event.target).is('img.class3')) {
var imagesrc = $(event.target).attr('src');
// Do something with imagesrc
}
// This condition is mutually exclusive to 1 and 2 but not to 3
if ($(event.target).is('img.class4')) {
var imagesrc = $(event.target).attr('src');
// Do something with imagesrc
}
});
На самом деле эти 2 класса не являются взаимоисключающими.
Это работает для меня, но правильно ли?
Ответы были очень информативными, но я все еще не понимаю, как мне установить здесь переменные.
На самом деле я также хочу сказать, что определенные условия являются взаимоисключающими, а определенные условия - нет.
Как мне это структурировать?
Мне, наверное, следовало использовать этот пример с самого начала.