«Единственный способ творить великие дела – это любить то, что ты делаешь»
JavaScript



Игра «Морской Бой» на JavaScript: Простая Игра и Игра для Двоих



Теперь следует самостоятельно решить практическую задачу. Она будет сложнее, чем предыдущие примеры, но тем и интереснее.

Помимо того, что было озвучено здесь, в этом задании также нужно будет вспомнить тему Массивов.



У вас есть массив: var students = ["Илья","Greg", "Алина"]; Вам надо пройтись по каждому элементу этого массива и выяснить в каком элементе массива есть буквы, которые не попадают в диапазон русских букв.

Подсказка. При решении нужно использовать цикл внутри цикла. В первом цикле вы перебираете элементы массива, а во внутреннем цикле уже каждый символ текущего элемента массива. Для внутреннего цикла можете назвать счетчик var j = 0;

Давайте немного изменим массив: в имени «Илья» букву «я» заменим на «q».

Фрагмент кода

<script type="text/javascript">

var students = ["Ильq","Greg", "Алина"];

var i = 0;

while (i < students.length) /* Создаем цикл, который перебирает элементы массива, т.е. имена студентов */
{
var name = students[i];
document.write(name + "<p>"); /* Выводим на экран текущее имя студента*/

var j = 0;
while (j < name.length) /* Создаем внутренний цикл, который перебирает символы текущего имени*/
{
/* Далее в условии проверяем текущий символ имени на предмет его попадания в диапазон кодов для букв русского алфавита */
if (name.charCodeAt(j) < 1040 || name.charCodeAt(j) > 1103)
{
document.write("В имени " + name + " введен недопустимый символ " + name.charAt(j) + "<p>");
}

j++;
}

i++;
}

</script>

Результат

Далее приведено еще одно решение этого задания. Оно реализовано при помощи цикла for.

Здесь за счет цикла for (и не только) оптимизирован код.

Фрагмент кода

<script type="text/javascript">

var students = ["Ильq","Greg", "Алина"];

for(i = 0; i < students.length; i++) /* Цикл перебирает элементы массива */
{
document.write(students[i] + "<p>") /* Выводим на экран текущее имя студента*/

for(j = 0; j < students[i].length; j++) /* Цикл перебирает символы текущего имени */
{
if(students[i].charCodeAt(j) < 1040 || students[i].charCodeAt(j) > 1103)
document.write(students[i].charAt(j) + " - это неверный символ <p>")
}

}

</script>

Результат





Отзывы и комментарии:

Комментариев нет...

Оставить отзыв:

Ваше Имя:

Текст комментария:

Ответьте на вопрос:

Сколько дней в Високосном году?


Объект String
Практическая задача - Методы charAt и charCodeAt
2853
Свойство length - Число символов в строке
2997
Практическая задача - Свойство length
1375
Регистр строки - toUpperCase и toLowerCase
23671
Практическая задача - Методы toUpperCase и toLowerCase
1528
Поиск совпадений в строке - Методы indexOf и lastIndexOf
2949
Практическая задача - Методы indexOf и lastIndexOf
1493
Метод slice - Копирование из строки
2796
Практическая задача - Метод slice
1542
Методы charAt и charCodeAt - Возвращаем символ и КОД символа
10048
Метод search - Регулярные выражения
2199
Регулярные выражения - Начало и Конец строки
2204
Практическая задача - Регулярные выражения
1299
Метод match - Возвращает массив из совпадений - Глобальный поиск g
3185
Поиск сайта в строке
1720
Практическая задача с кредитной картой
2049
Метод replace - Замена совпадений
4503
Практическая задача - Метод replace
2067
Метод trim в - Удаление пробелов в начале и конце строки
6086
Метод substring - Извлекает часть строки
1094
Метод split в JavaScript - Разделитель строки
2032

Тематические публикации
Популярные заметки
Последние заметки