Посимвольное сравнение чисел
Добрый день!
на delphi я писал код примерно такой (посимвольная проверка введенных чисел): s:string; if (s[1]=s[2]) and (s[2]=s[3]); then showmessage ('ошибка ввода'); else showmessage ('нет ошибки'); проверка при нажатии на btn Помогите переписать этот код на javascript. Спасибо! |
Цитата:
var s; В JavaScript динамическая типизация. Поэтому при объявлении переменной не требуется указывать тип. Просто присваивай ей значение любого типа, какой тебе нужен. Например: var s; s = 'строка'; Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
В C-подобных языках условия записываются как: if (..) [code1] else [code2] Если код должен содержать несколько выражений (statement), то так: if (..) { [code1] } else { [code2] } |
в целом странно, что чел не решил эту задачу сам, введя соответствующий запрос в поисковик и прогуглив соответствующие операторы и конструкции (информация несекретная ;))
Цитата:
предположим, есть строка '12345', то что ты проверяешь? что '1' == '2' и '2' == '3'? а если проверка чисел, то зачем делать сравнение посимвольно, а не использовать, скажем, StrToInt? хотя, в целом, ты сделал одну правильную вещь - предпринял уход с delphi :) |
str1="12345" str2="11145" check=function(str){ if(str[0]===str[1]&&str[1]===str[2])return alert("YES"); alert("NO") } check(str1) check(str2) |
<input id="test" type="text" />
<script> var s; if (s[0]==s[1] && s[1]==s[2] && s[2]==s[3] && s[4]==[5]&& s[6]==[7]; then alert ("message1") else alert ("message2"); </script> что не так? 2) в делфи можно было: var x: integer; x:=5; if (s[1]=inttostr(x))...... т.е. сравнение символа строки с числом. в js как это проделать? |
Цитата:
Цитата:
Цитата:
alert(5 == '5'); alert(2 == '5'); Когда постишь код, жмякай кнопку ![]() |
<input id="test" type="text" /> <script> var s = 'test' if (s[0]==s[1] && s[1]==s[2] && s[2]==s[3] && s[3]==s[4] && s[4]==s[5]){ alert ("message1"); } else if (s[0]==s[2] && s[2]==s[3] && s[4]==s[5] && s[5]==s[6]&& s[6]==s[7]){ alert ("message2"); } </script> сообщение выходит без ввода данных в input id |
Цитата:
|
Цитата:
var input = document.getElementById('test'); Далее, ввод - это событие "input" (оно так называется). Самый простой способ (устаревший) навешать обработчик события: input.oninput = function() { // этот код будет вызван всякий раз при вводе чего-либо в поле. }; Современный вариант: input.addEventListener('input', function() { // этот код будет вызван всякий раз при вводе чего-либо в поле. }); Вместо события "input" можно использовать другое событие - "keyup" - опускание клавиши. Но клавиши - не единственный способ ввода в текстовое поле (не забываем про copy/paste и drag/drop). Текущее значение инпута (строковое) доступно в свойстве input.value |
<input id="test" type="text" /> <script> var input = document.getElementById('test'); input.addEventListener('input', function() { var s = 'test' if (s[3]==s[4] && s[4]==s[5] && s[5]==s[6] && s[6]==s[7] && s[7]==s[8]){ alert ("message1"); } else if (s[3]==s[4] && s[4]==s[5] && s[5]==s[6] && s[6]==s[7] && s[7]!=s[8]){ alert ("message2"); )}; } </script> Если все правильно понял, но так же не подтягивает. |
Часовой пояс GMT +3, время: 16:56. |