Возникла следующая проблема: код реагирует на ЛЮБОЕ значение, а должен только если там есть английские буквы и/или цифры
if(login.indexOf("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0")){
А не работает, потому, что возвращает значение -1
если этих символов нету в строке, а if (-1) ...
будет выполняться всегда.
Следует как минимум указать в условии этот кусочек: !== -1
.
var login = "#####"; // Этих символов нету в нижеперечисленном списке
var index = login.indexOf("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0");
if (index && index !== -1) {
console.log(index);
} else {
console.log('Такого символа нету в строке');
}
Подробней о .indexOf()
:
Обратите внимание, что значение 0
не вычисляется в true
, а значение -1
не вычисляется в false
. Поэтому, для проверки того, что конкретная
строка содержится в другой строке, правильно делать так:
'Голубой кит'.indexOf('Голубой') !== -1; // true
'Голубой кит'.indexOf('Галубой') !== -1; // false
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Всем привет) в общем ситуация) в oracle есть переменная типа rowtype, как мне ее наполнить данными полученными с формы, с помощью PHPСейчас я делаю...
Есть строка вида firstName=%D0%9D%D0%B8%D0%BA%D0%BE%D0%BB%D0%B0%D0%B9&lastName=&patronymic=&phone=80004064909Как получить корректное значение firstName и phone, например? Это не get-запрос,...
Выборка из бд, которая возвращает объект