Посимвольное сравнение чисел
Добрый день!
на 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, время: 22:01. |