Пароль, условием которого является количество согласных и гласных
Добрый день! Помогите, пожалуйста, с созданием текстового пароля. Нужно на одной HTML-странице вывести окно ввода пароля. Алгоритм проверки корректности пароля: в пароле количество гласных должно быть равно количеству согласных + 3. Буду очень благодарен за помощь, спасибо!
|
;(function(){ var str = 'аеёиоуыэюя' check = function(letter){ if(str.indexOf(letter) > -1) return "vowel" return "consonant" } }()) checkForm = function(){ var warn = "введите пароль в русской раскладке" var pass = prompt(warn) if(/[^а-яё]/i.test(pass)) { alert(warn) return checkForm() } pass = pass.split("") return (pass.filter(function(letter) {return check(letter) === "vowel"}).length - 3) === pass.filter(function(letter) {return check(letter) === "consonant"}).length } alert(checkForm()) |
brexit2000,
зачем подсчитывать гласные если подсчитали согласные? |
рони,
просто ради читабельности, чтобы не еб*ть мозг |
brexit2000,
мало ли кому захочется погорячее строка 18 return (2 * pass.filter(function(letter) {return check(letter) === "consonant"}).length + 3 === pass.length) |
Спасибо огромное, безумно благодарен вам! Весь мозг сломал, кучу всего перепробовал, сам я всего два дня назад начал Javascript изучать
|
Подскажите, пожалуйста, как сделать переход на вторую страницу "st6.html при выполнении вашего скрипта и переход на первую страницу "st.html" при невыполнении?
|
Necrogeddon,
alert(checkForm()) заменить на window.location.href = checkForm() ? "st6.html" : "st.html" ; |
Спасибо, вы мне очень помогли!
|
Видимо "тот же" универ. :)
|
Часовой пояс GMT +3, время: 08:01. |