Доброго времени суток, никак не получается сравнить 2 строковые переменные, ситуация такая:
есть var i= "string_1"; и var b= "string_2";
нужно сравнить примерно так
И, блин, что значит не работает? Что тут вообще может работать?))) Даже если ты напишешь правильный оператор - ничего не заработает))) В тело условия нужно что-то положить, хотя бы console.log(i != b) - тебе правильный булеан в консоль упадёт
окей, попытаюсь подробней, есть массив, из него случайно выбирается значение и записывается в "i", в конце функции var b = i делаю для того что бы при следующее случайное значение не соответствувало предыдущему и проверяю if (b !== i ) {
то выполняется функция
}
function ani() {
var arr = ["#el_1", "#el_2", "#el_3", "#el_4","#el_5", "#el_6", "#el_7", "#el_8"];
var rand = Math.floor(Math.random() * arr.length);
var i = arr[rand];
if ( i !== b) {
w = $(i).width(),
h = $(i).height(),
zoom = 0.3;
$(i).animate({
width: w+w*zoom,
height: h+h*zoom,
left: "-="+(w*zoom/2),
top: "-="+(h*zoom/2)
},200);
$(i).animate({
width: w,
height: h,
left: "+="+(w*zoom/2),
top: "+="+(h*zoom/2)
},200);
}
else if (i==b){
alert('равно');
}
$(i).removeAttr("style");
var b = i;
}
setInterval('ani()', 500);
Александр Ружевич: я вижу здесь баг даже без дебаггера. Тебе бы конечно следовало бы подучить юзать devTools, но и без него очевидно, что в первом же условии b будет undefined. var b перед i добавь.
Никита Кит: все с чего то начинают, пока что разработка не основной вид деятельности, не могу все время уделять, только недавно с jquery познакомился а ты мне про ооп, всему свое время
Александр Ружевич: понимаешь, мужик, ты делаешь довольно банальные ошибки. У тебя просто нет понимания того, что такое методы, функции, переменные, типы данных. Как код читается и исполняется. Это всё и есть ООП. Без этих базовых основ - основ всех основ ты будешь лажать в применении любых библиотек, не говоря уже о чистом js. Начни с ООП. Я тоже как ты раньше думал. А потом посмотрел курс и всё как по полочкам расставилось.