Old code mu books javascript

Введение в регулярные выражения в JavaScript

Регулярные выражения — это такие команды для сложного поиска и замены (или просто поиска). Они позволяют делать очень интересные вещи, но, к сожалению, довольно тяжелы в освоении.

Существует несколько методов JavaScript для работы с регулярными выражениями. Мы начнем знакомится с ними на примере replace — вы уже знакомы с этим методом: он первым параметром принимает что менять, а вторым — на что менять. А сам метод применяется к строке, в которой производится замена:

Первым параметром этого метода можно передавать не просто строку, а . Регулярное выражение представляет собой набор команд, расположенных внутри слешей / . Эти слеши называются регулярных выражений.

Сами регулярные выражения состоят из двух типов символов: из тех, которые обозначают сами себя и из символов-команд, которые называются .

Буквы и цифры обозначают сами себя. В следующем примере мы с помощью регулярного выражения заменим букву ‘a’ на ! :

А вот точка является специальным символом и обозначает любой символ . В следующем примере мы найдем строку по такому шаблону: буква ‘x’ , затем любой символ, затем опять буква ‘x’ :

После ограничителей можно писать — команды, которые изменяют общие свойства регулярного выражения. Например, модификатор g включает режим глобального поиска и замены — без него регулярка ищет только первое совпадение, а с ним — все совпадения.

В следующем примере не указан модификатор g и регулярка найдет только первое совпадение:

Читайте также:  Update python in environment

А теперь регулярка найдет все совпадения:

Напишите регулярку, которая найдет строки ‘ahb’ , ‘acb’ , ‘aeb’ по шаблону: буква ‘a’ , любой символ, буква ‘b’ .

Напишите регулярку, которая найдет строки ‘abba’ , ‘adca’ , ‘abea’ по шаблону: буква ‘a’ , 2 любых символа, буква ‘a’ .

Напишите регулярку, которая найдет строки ‘abba’ и ‘abea’ , не захватив ‘adca’ .

Источник

Метод map для перебора массива в JavaScript

Дан массив с числами. Используя метод map извлеките из каждого элемента массива квадратный корень и запишите результат в новый массив.

Дан массив со строками. Используя метод map в конец значению каждого элемента массива добавьте символ ‘!’ .

Дан массив со строками. Используя метод map переверните символы каждой строки в обратном порядке.

Используя метод map преобразуйте этот массив в следующий:

Ключ элемента

Функция-коллбэк может также принимать второй параметр — в него JavaScript разместит ключ элемента массива.

Давайте посмотрим на примере. Пусть дан вот такой массив:

Давайте в конец каждого элемента запишем его порядковый номер в массиве:

let arr = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]; let result = arr.map(function(elem, index) < return elem + index; >); console.log(result); // выведет [‘a0’, ‘b1’, ‘c2’, ‘d3’, ‘e4’]

Дан массив с числами. Используя метод map запишите в каждый элемент массива значение этого элемента, умноженное на его порядковый номер в массиве.

Перебор многомерных массивов

Метод map можно использовать и для перебора многомерных массивов. Пусть, к примеру, дан вот такой массив:

Давайте переберем этот массив через map и выведем его элементы в консоль:

В результате console.log выведет [1, 2, 3] , потом [4, 5, 6] , потом [7, 8, 9] .

Как вы видите, в переменную elem попадают подмассивы. Давайте теперь применим метод map к каждому подмассиву и возведем каждый его элемент в квадрат:

let arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; let result = arr.map(function(elem) < return elem.map(function(num) < return num * num; >); >); console.log(result);

Источник

Введение в классы и объекты в JavaScript

Сейчас мы с вами займемся изучением ООП в JavaScript. Давайте рассмотрим пример из жизни, а потом перенесем его на JavaScript.

В качестве примера возьмем автомобиль. У него есть колеса, цвет, вид кузова, объем двигателя и так далее. Кроме того, водитель может отдавать ему команды: ехать, остановится, повернуть направо, налево и тп.

Можно говорить о том, что существует некоторый автомобилей, обладающий общими свойствами (у всех есть колеса и всем им можно отдавать команды).

Конкретный автомобиль, стоящий на улице — это представитель этого класса, или, другими словами, этого класса. У всех объектов этого класса есть : количество колес, цвет, вид кузова и : ехать, остановится, повернуть направо, налево.

Другими словами сам класс — это чертеж, по которым на заводе делаются автомобили. Объект же — это сама машина, сделанная по этим чертежам.

В JavaScript класс создается с помощью ключевого слова class , за которым следует название этого класса. Давайте сделаем класс Car :

Укажем теперь в нашем чертеже, что любой автомобиль, созданный по этому чертежу, будет иметь свойство для цвета и свойство для количества топлива.

Для этого внутри класса напишем свойство color и свойство fuel :

Давайте теперь сделаем методы нашего класса. В JavaScript методы похожи на обычные функции, только объявляются без ключевого слова function .

Как уже упоминалось выше, наш автомобиль может ехать, может поворачивать, может останавливаться. Сделаем соответствующие методы в нашем классе:

Мы с вами сделали чертеж нашего автомобиля. Теперь нужно отправится на завод и сделать объект этого класса (то есть конкретный автомобиль).

В JavaScript это делается с помощью ключевого слова new , после которого пишется имя класса:

Однако, если просто создать объект класса — это ни к чему не приведет (это все равно, что, к примеру, объявить массив и никуда его не записать). Нам нужна переменная для хранения этого объекта.

Пусть эта переменная будет называться myCar — запишем в нее созданный нами объект:

После создания автомобиля можно обращаться к его свойствам. Обращение к ним происходит через точку. Давайте установим свойства нашего объекта:

let myCar = new Car; // командуем заводу сделать автомобиль myCar.color = ‘red’; // красим в красный цвет myCar.fuel = 50; // заливаем топливо

Все, наш автомобиль создан, покрашен и заправлен. Теперь мы можем отдавать ему команды через методы этого автомобиля.

Обращение к методам также происходит через точку, но, в отличие от свойства, после имени метода следует писать круглые скобки. Давайте покомандуем нашим объектом:

Источник

Введение в классы и объекты в JavaScript

Сейчас мы с вами займемся изучением ООП в JavaScript. Давайте рассмотрим пример из жизни, а потом перенесем его на JavaScript.

В качестве примера возьмем автомобиль. У него есть колеса, цвет, вид кузова, объем двигателя и так далее. Кроме того, водитель может отдавать ему команды: ехать, остановится, повернуть направо, налево и тп.

Можно говорить о том, что существует некоторый автомобилей, обладающий общими свойствами (у всех есть колеса и всем им можно отдавать команды).

Конкретный автомобиль, стоящий на улице — это представитель этого класса, или, другими словами, этого класса. У всех объектов этого класса есть : количество колес, цвет, вид кузова и : ехать, остановится, повернуть направо, налево.

Другими словами сам класс — это чертеж, по которым на заводе делаются автомобили. Объект же — это сама машина, сделанная по этим чертежам.

В JavaScript класс создается с помощью ключевого слова class , за которым следует название этого класса. Давайте сделаем класс Car :

Укажем теперь в нашем чертеже, что любой автомобиль, созданный по этому чертежу, будет иметь свойство для цвета и свойство для количества топлива.

Для этого внутри класса напишем свойство color и свойство fuel :

Давайте теперь сделаем методы нашего класса. В JavaScript методы похожи на обычные функции, только объявляются без ключевого слова function .

Как уже упоминалось выше, наш автомобиль может ехать, может поворачивать, может останавливаться. Сделаем соответствующие методы в нашем классе:

Мы с вами сделали чертеж нашего автомобиля. Теперь нужно отправится на завод и сделать объект этого класса (то есть конкретный автомобиль).

В JavaScript это делается с помощью ключевого слова new , после которого пишется имя класса:

Однако, если просто создать объект класса — это ни к чему не приведет (это все равно, что, к примеру, объявить массив и никуда его не записать). Нам нужна переменная для хранения этого объекта.

Пусть эта переменная будет называться myCar — запишем в нее созданный нами объект:

После создания автомобиля можно обращаться к его свойствам. Обращение к ним происходит через точку. Давайте установим свойства нашего объекта:

let myCar = new Car; // командуем заводу сделать автомобиль myCar.color = ‘red’; // красим в красный цвет myCar.fuel = 50; // заливаем топливо

Все, наш автомобиль создан, покрашен и заправлен. Теперь мы можем отдавать ему команды через методы этого автомобиля.

Обращение к методам также происходит через точку, но, в отличие от свойства, после имени метода следует писать круглые скобки. Давайте покомандуем нашим объектом:

Источник

Практика на функции в JavaScript

В приведенных ниже задачах вам необходимо будет написать функции. Давайте им правильные имена, отражающие их суть, а также при необходимости используйте вспомогательные функции, в том числе полученные в предыдущих заданиях.

Сделайте функцию, которая параметром будет принимать массив и возвращать сумму его элементов.

Сделайте функцию, которая параметром будет принимать число и возвращать массив его делителей.

Сделайте функцию, которая параметром будет принимать строку и возвращать массив ее символов.

Сделайте функцию, которая параметром будет принимать строку и переворачивать ее символы в обратном порядке.

Сделайте функцию, которая параметром будет принимать строку и делать заглавной первую букву этой строки.

Сделайте функцию, которая параметром будет принимать строку и делать заглавной первую букву каждого слова этой строки.

Сделайте функцию, заполняющую массив целыми числами от 1 до заданного.

Сделайте функцию, которая параметром будет принимать число и возвращать сумму его цифр.

Сделайте функцию, которая параметром будет год и проверять, високосный он или нет.

Сделайте функцию, которая параметром будет принимать секунды, а возвращать количество суток, соответствующих этим секундам.

Сделайте функцию, которая будет возвращать случайный элемент из массива.

Сделайте функцию, которая параметром будет принимать число и проверять, простое оно или нет.

Источник

Оцените статью