условие IF

Поддержка
  • @paini Можете в условиях удалять пробелы, но в конструкторе это показать сложнее)) это проще в выполнить код а потом уже проверять на if.

    [[ВАША_ПЕРЕМЕННАЯ]] = [[ВАША_ПЕРЕМЕННАЯ]].replace(/\s*/g,'')
    

    Это удалит все пробелы которые встретит в переменной

  • @tts9 Сейчас попробуем последний вариант.А если в переменной текст и мне нужно его сравнить,кавычки не нужны ведь? прим.[[SITE1]] == [[SITE2]]

  • @paini Конечно нет. Если текст уже в переменной то пишите само название переменной. Только если вам нужно сравнивать со строкой без объявления переменной кавычки используются например типа такого

    if([[ВАША ПЕРЕМЕННАЯ]] == "что  то") 
    {
    }
    

    Только так

  • @tts9 По цифрам все равно не выполняется условие.Как только не пробовал.0_1561044991721_Безымянный.png

  • @paini А что у вас в [[KOLICHESTVO_OSHIBOCK]] И чему оно там равно?

  • @tts9 Там изначально цифра 1,скрипт получает все ссылки с сайта и ходит по ним до 5ти раз (в теории),увеличивая переменную на 1 и так до 5-ти раз.В теории если 5 раз не получилось перейти по ссылке,то останавливаем поток.0_1561045524572_Безымянный.png 0_1561045570770_Безымянный.png 0_1561045606351_Безымянный.png

  • @paini Это я понял почему у вас появляются пробелы в этом действии мне непонятно. Там действие то вот такое

    [[KOLICHESTVO_OSHIBOCK]] = [[KOLICHESTVO_OSHIBOCK]]+1;
    
    

    Если оно сразу было задано цифрой и без кавычек..
    Да если вы используете выполнить код. То напишете там такое

    [[KOLICHESTVO_OSHIBOCK]] = parseInt([[KOLICHESTVO_OSHIBOCK]]) 
    log([[KOLICHESTVO_OSHIBOCK]])
    

    ))
    Это действие принудительно выдернет из переменной все целые числа) в вашем случае это должна быть цифра, одна. А вот если их вдруг станет две, значит у вас там не цифры, а строки.

  • @tts9 said in условие IF:

    [[KOLICHESTVO_OSHIBOCK]] = parseInt([[KOLICHESTVO_OSHIBOCK]])
    log([[KOLICHESTVO_OSHIBOCK]])

    Странно,почему то ошибку выдает,что нет переменной

  • @paini Ну название переменной то свое укажите, я так глядя на скрин написал. Мог и ошибится в наборе
    В общем напишите в выполнить код

    log(parseInt([[ВАША_ПЕРЕМЕННАЯ]]))
    

    в логе вы увидете что у вас в переменной, если это просто цифры то это будет резулт сложения, а вот если это строка к которой вы прибавили один))
    Вы когда переменную назначали назначили ее как?) Строкой или цифрой? Или выражением?
    0_1561047114468_2019-06-20_201117.png

  • Невнимательный...)Переменная как строка используется

  • @paini Ну Если такие действия производить при сложении двух переменных, то он все равно попытается привести их к числам если они там есть. В вашем случае он сделал все по правилам) он просто добавил еще один символ, пробел. Потому что ваши цифру 1 или 0 что вы там первым поставили, он видит вот так "1". Бывает.

  • Ладно,спасибо всем за помощь.Буду еще пытаться придумать решение.Скрипт все равно гоняет по кругу

  • @paini Скиньте мне его в лс если не боитесь. Посмотрю где ваша ошибка.
    Но это однозначно ваша ошибка. Эта переменная создается вами, вы же ее увеличиваете. Значит где то что то не так.

  • Для увеличения переменной есть одноимённое действие "Увеличить переменную"
    0_1561057913190_ea4fa3e9-dbcc-419b-86fb-1a10df57bbba-изображение.png

    посмотрите тестовый скрипт, на примере обычно всё проще понять.

  • Дополню к разбору возможных ошибок при создании переменной и проверке на числа, когда создается какая то функция в которой есть цикл или метки, и идет проверка на повторяемость. Уважаемые пользователи. Пожалуйста когда создаете выражения буд-те внимательны. ( @Paini просто не знал, ему это не нужно было он привык кубиками)
    от того как вы называете переменную. Это очень важно и когда вы создаете выражения в конструкторе это тоже очень важно.
    Подсказки непонятные всплывающие не просто так.

  • Да,будем учиться.С помощью tts9 сделали подобное...Скрипт просто пропускал установленную переменную.В чем причина - неизвестно,но возможно из за экшена меток.

  • @paini Нет, их я убрал потому что мне они не нравятся) И если могу то всегда оборйдусьбез них. Ну нету в js goto
    это все костыли break наше все.
    А у вас Я же вам описал скорее всего задержка и неверное значение в экшене if чо проверять переменную если эта функция стоит после проверки и подразумевается что функция написана правильно. Это js только в кубиках. Знаний особо замороченных или особо муторных не обязательно. Но базовые знания js логики очень желательны, просто всегда будете понимать что вы делаете и каков будет резулт. Ну должен быть 🤣. И будете понимать где что могло сломаться и не отработать. Дебажить намного проще.

  • Я обычно их не использую (метки),но там решил сделать так.Буду знать и использовать вышеприведенные варианты.

  • @paini Тем более вы сами своими словами про равно 5 и количество как порог, это цикл. У вас был тоже только с доп костылями, в виде меток. 🙂