«Единственный способ творить великие дела – это любить то, что ты делаешь»
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
2786
Свойство length - Число символов в строке
2884
Практическая задача - Свойство length
1284
Регистр строки - toUpperCase и toLowerCase
23070
Практическая задача - Методы toUpperCase и toLowerCase
1427
Поиск совпадений в строке - Методы indexOf и lastIndexOf
2821
Практическая задача - Методы indexOf и lastIndexOf
1400
Метод slice - Копирование из строки
2674
Практическая задача - Метод slice
1462
Методы charAt и charCodeAt - Возвращаем символ и КОД символа
9527
Метод search - Регулярные выражения
2127
Регулярные выражения - Начало и Конец строки
1958
Практическая задача - Регулярные выражения
1166
Метод match - Возвращает массив из совпадений - Глобальный поиск g
3056
Поиск сайта в строке
1437
Практическая задача с кредитной картой
1751
Метод replace - Замена совпадений
4316
Практическая задача - Метод replace
1979
Метод trim в - Удаление пробелов в начале и конце строки
5929
Метод substring - Извлекает часть строки
1029
Метод split в JavaScript - Разделитель строки
1898

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