Методы
Все значения в JavaScript, за исключением null
и undefined
, содержат набор вспомогательных функций и значений, доступных «через точку».
Такие функции называют «методами», а значения – «свойствами». Здесь мы рассмотрим основы использования свойств и методов.
В следующем примере объект obj имеет два свойства: name и showMessage
1var obj = {2 name: "John",3 showMessage: function ( message ) {4 console.log ( message )5 }6}78typeof obj.name // "string"9typeof obj.showMessage // "function"1011obj.showMessage ( "Hello" )
Обращение к любому свойству: имя объекта + . + имя свойства
С методами отличие только в том, что для вызова метода после его имени нужны круглые скобки, и если у метода есть формальные параметры - то в круглых скобках нужно перечислить аргументы ( входные данные )
Таким образом, вызов метода отличается от вызова обычной функции только тем, что перед именем метода должно быть имя "хозяина", отделенное точкой от имени метода У всех функций ( и всех переменных ) в JS есть "хозяин" поэтому все функции в JS - методы, а все переменные - свойства у обычных функций ( и переменных ) хозяин - глобальный объект ( window )все, что не находится в "частной собственности", принадлежит ему Если при обращении к свойству или вызове метода "хозяин" не указан, значит этот хозяин - глобальный объект
1var x = 2352window.x // вернет 235
Методы работы со строками
Сложение строк
Две строки можно просто сложить
Например, в результате выполнения следующего кода:
1var str_1 = "Hello, ", str_2 = "world"2console.log ( str_1 + str_2 ) // Hello world
Методы строк
- indexOf() возвращает индекс первого вхождения указанного значения в строке.
- slice() извлекает часть строки и возвращает новую строку.
- substring() возвращает подстроку строки между двумя индексами, или от одного индекса и до конца строки.
- substr() возвращает указанное количество символов из строки, начиная с указанной позиции.
- toLowerCase() возвращает значение строки, на которой он был вызван, преобразованное в нижний регистр.
- toUpperCase() возвращает значение строки, на которой он был вызван, преобразованное в верхний регистр.
- split() разбивает строку на массив строк путём разделения строки указанной подстрокой.
- trim() удаляет пробельные символы с начала и конца строки.
- charAt() возвращает указанный символ из строки.
- charCodeAt() возвращает числовое значение Юникода для символа по указанному индексу.
- repeat() конструирует и возвращает новую строку, содержащую указанное количество соединённых вместе копий строки, на которой он был вызван.
- replace() возвращает новую строку с некоторыми или всеми сопоставлениями с шаблоном, заменёнными на заменитель.
Методы массивов
- pop() удаляет последний элемент из массива и возвращает его значение.
- push() добавляет один или более элементов в конец массива и возвращает новую длину массива.
- splice() изменяет содержимое массива, удаляя существующие элементы и/или добавляя новые.
- shift()удаляет первый элемент из массива и возвращает его значение. Этот метод изменяет длину массива.
- unshift() добавляет один или более элементов в начало массива и возвращает новую длину массива.
- slice() возвращает новый массив, содержащий копию части исходного массива.
- concat() возвращает новый массив, состоящий из массива, на котором он был вызван, соединённого с другими массивами и/или значениями, переданными в качестве аргументов.
- join() объединяет все элементы массива
- includes() определяет, содержит ли массив определённый элемент, возвращая в зависимости от этого
true
илиfalse
.
Практика 👩💻👨💻
Задание :one:
Написать функцию, которая получает в качестве аргумента строку и удаляет из нее символы,код которых больше 1103
или меньше 1040
.
Функция должна вернуть новую строку
Применить эту функцию к строке
1"Вчbvnера 789 был home work наiuyстоtящий + празrorднgfdик"
Задание :two:
Есть два массива, в первом - имена, во втором - фамилии. Написать функцию, которая принимает в аргументы эти 2 массива и возвращает массив с именами и фамилиями
1var names = ['John','Bob','Tom'];2var surenames = ['Lennon','Marley','Cruz'];34function getFullNames(a,b){5 //your code6}78getFullNames(names,surenames) // ['John Lennon',Bob Marley','Tom Cruz']
Задание :three:
Написать функцию getAbbreviation
, которая принимает строку в качестве аргумента,
разбивает эту строку на массив слов и возвращает строку c аббревиатурой.
Например:
1function getAbbreviation(str){2 // your code3}4getAbbreviation("By The Way") // BTW5getAbbreviation("I Don't Know") // IDK6getAbbreviation("In My Opinion") // IMO
Задание :four:
Написать функцию, которая принимает строку в качестве аргумента и возвращает массив чисел найденных в этой строке.
1function parseNumbersFromString(str){2 // your code3}45parseNumbersFromString("hello23world53") // [2,3,5,4]67parseNumbersFromString("hello") // []