//
ECMAScript® 2023 language specification //www.ecma-international.org
Стандартные встроенные объекты //developer.mozilla.org
Стандартные встроенные функции
//
- parseInt(string[, radix])
- string Значение для разбора. Если параметр не является строкой, он будет в неё преобразован. Ведущие пробельные символы в строке игнорируются
- radix Необязательный параметр. Целое число, представляющее основание системы счисления для числа в указанной выше строке. Для избежания непонятностей при чтении кода и гарантии предсказуемого поведения всегда определяйте этот параметр. Различные реализации дадут разные результаты, если основание системы счисления не будет указано.
- Кодирование
- encodeURIComponent(str) заменяет символы строки для корректного применения в качестве компонента URI
- encodeURI(str) заменяет символы строки URI для корректного применения
Стандартные встроенные объекты
//
Number
Объект-обертка Number представляет числовые значения.
- Методы
- Number.isInteger(value) определяет, является ли переданное значение целым числом
- Number.isFinite(testValue) определяет, является ли переданное значение конечным числом
- Number.parseFloat(string)
- Number.parseInt(string[, radix])
- numObj.toString([radix])
- numObj.toPrecision([precision]) возвращает строку, представляющую объект Number с указанным числом значащих цифр (от 1 до 100)
- !!!!
- Number.parseInt(string[, radix]) !!! идентично глобальной функции parseInt()
- numObj.toString([radix]) возвращает строковое представление указанного объекта
- radix (необязательный) число между 2 и 36 служит основанием системы счисления строкового представления
- numObj.toExponential([fractionDigits]) возвращает строку экспоненциального представления с заданным числом цифр после десятичной точки
- numObj.toFixed([digits]) возвращает строку не экспоненциального представления с заданным числом цифр после десятичной точки
- numObj.toPrecision([precision]) возвращает строку представления с указанной точностью
Boolean
Объект-обертка над примитивом логического типа
- bool.valueOf() возвращает примитивное значение объекта; обычно вызывается внутри движка JavaScript, а не явно в коде
- bool.toString() возвращает строковое одно из двух строковых представлений true или false
String
//
- Конструкторы
- Операторы (String).
- [index]: String возвращает новую строку с символом по указанному индексу (индексация от 0)
- Свойства (String).
- length длина строки в кодовых значения UTF-16
- свойство может не соответствовать фактическому числу символов, если строка содержит кодовые точки Unicode больше 0x10000 (emoji-символы)
- length длина строки в кодовых значения UTF-16
- Статические методы String.
- String.fromCharCode(num1[, ...[, numN]]) возвращает строку, созданную из указанной последовательности значений единиц кода UTF-16 (коды от 0 до xFFFF/65535).
- String.fromCodePoint(num1[, ...[, numN]]) Статический метод String.fromCodePoint() возвращает строку, созданную из указанной последовательности кодовых точек.
- String.raw(callSite, ...substitutions), String.raw
templateString
Статический метод String.raw() является теговой функцией для шаблонных строк; подобно префиксу r в Python или префиксу @ в C# для строковых литералов, эта функция используется для получения необработанной строки из шаблона.
- Методы (String).
- toString() возвращает значение примитивного типа string, которое можно строго сравнивать со строковым литералом (например в switch)
123456var abc = new String("abc");Logger.log(abc=="abc"); // trueLogger.log(abc==="abc"); // falseLogger.log(abc.toString()==="abc"); // trueLogger.log(typeof abc); // objectLogger.log(typeof "abc"); // string - charAt(index): String возвращает новую строку с символом по указанному индексу в строке (индексация от 0)
- charCodeAt(index): Integer возвращает код 0..65535 не суррогатного символа UTF-16 по индексу index
- codePointAt(index) возвращает код любого символа UTF-16 включая суррогатные пары
- concat(string2, string3[, ..., stringN]) *
- методу рекомендовано предпочитать более производительные операторы + и += и/или метод Array.join()
- str.startsWith(searchString[, position]) определить, начинается ли строка с символов указанных
- str.endsWith(searchString[, length])
- str.includes(searchString[, position])
- repeat(count): String возвращает новую строку, в которой исходная строка повторена count раз
- str.padStart(targetLength [, padString]) заполняет текущую строку другой строкой (несколько раз, если нужно) так, что итоговая строка достигает заданной длины
- str.padEnd(targetLength [, padString]) дополняет текущую строку с помощью заданной строки (в конечном счёте повторяя), так чтобы результирующая строка достигла заданной длины
- str.trim(), удаляет пробельные символы (пробел, табуляция, неразрывный пробел и прочие) и все символы конца строки (LF, CR и прочие)
- str.trimStart(), str.trimEnd() (trimLeft, trimRight) - ?
- str.slice(beginIndex[, endIndex]) извлекает часть строки и возвращает новую строку без изменения оригинальной строки
- str.substring(indexA[, indexB]) возвращает подстроку строки между двумя индексами, или от одного индекса и до конца строки.
- str.split([separator[, limit]]) разбивает объект String на массив строк путём разделения строки указанной подстрокой
- str.match(regexp)
- str.valueOf() возвращает примитивное значение объекта,
- toString() возвращает значение примитивного типа string, которое можно строго сравнивать со строковым литералом (например в switch)
Дата и время
//developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Date
Для работы с датами и временем в JS предусмотрен класс Date.
- Конструкторы
- new Date() создает дату текущего момента
- new Date(value) создает дату по числовой метке времени UTC
- new Date(dateString) создает дату по строковому представлению
- new Date(year, month[, day[, hour[, minute[, second[, millisecond]]]]]) /
- Методы
- .getTime() возвращает числовую метку времени UTC Timestamp
- .toISOString() возвращает строку даты в формате ISO вида '2023-04-05T12:34:56.789Z'
- .getDay() возвращает индекс дня в американской неделе для объекта даты 0..6 (Sun..Sat)
- .getDate() возвращает день месяца даты 1..31
- .getMonth() возвращает индекс месяца даты 0..11 (Jan..Dec)
- .getFullYear() возвращает год даты
- .setTime(timeValue) устанавливает время объекта значением временной метки UTC Timestamp
- .setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]]) устанавливает часы указанной даты по местному времени и возвращает числовую метку времени UTC Timestamp
- .setMinutes(minutesValue[, secondsValue[, msValue]]) /
- Статические методы
- Date.now() возвращает временную метку UTC текущего времени
Массив /Array
Справочник по JavaScript > Стандартные встроенные объекты > Array //developer.mozilla.org
Массив (Array) в JavaScript является глобальным объектом, который используется для создания массивов; которые представляют собой высокоуровневые спископодобные объекты.
- var Declares a variable
let Declares a block variable
const Declares a block constant
if Marks a block of statements to be executed on a condition
switch Marks a block of statements to be executed in different cases
for Marks a block of statements to be executed in a loop
function Declares a function
return Exits a function
try Implements error handling to a block of statements - Конструкторы
- let arr = [0, ...arr1, 2, ...arr2]; для комбинированного использования с оператором расширения
- Свойства
- length устанавливает или возвращает число элементов массива
- Методы Array.
- Навигация
- includes(search[, fromIndex = 0]) возвращет true, если массив содержит элемент, иначе false
- indexOf(searchElement[, fromIndex = 0]) возвращает первый индекс, по которому данный элемент может быть найден в массиве или -1
- fill(value[, start = 0[, end = this.length]]) - заполняет все элементы массива от начального до конечного индексов значением, возвращает изменённый массив
- Управление последовательностью
- push(element1, ..., elementN) добавляет один или несколько элементов в конец массива, возвращает новую длину массива
- unshift(element1[, ...[, elementN]]) добавляет один или несколько элементов в начало массива, возвращает новую длину массива
- shift() удаляет первый элемент из массива и возвращает его значение. Этот метод изменяет длину массива
- pop() - удаляет последний элемент из массива, возвращает его значение
- reverse() - обращает последовательность элементов в массиве (первый становится последним и наоборот)
- sortJ() -
- Фрагменты
- splice(start[, deleteCount[, item1[, item2[, ...]]]]) изменяет содержимое массива, удаляя существующие элементы и/или добавляя новые
- slice([begin[, end]]) возвращает новый массив, содержащий копию части исходного массива
- join([separator]): String объединяет все элементы массива (или массивоподобного объекта) в строку
- separator (, по умолчанию) задает соединительную строку или значене приводимое к строке
- обратное действие выполняет str.split([separator[, limit]])
- flat(depth = 1) возвращает новый массив, в котором элементы вложенных подмассивов были рекурсивно "подняты" на depth уровней с сохранением порядка
- some(callback(element[, index[, array]])[, thisArg]): Boolean проверяет, удовлетворяет ли хотя бы один элемент массива условию, заданному в передаваемой функции
123const array = [1, 2, 3, 4, 5];const even = (element) => element % 2 === 0;console.log(array.some(even));
- Навигация
- методы для стрелочных функций
- .forEach(function callback(currentValue, index, array) { iterator }[, thisArg]); - метод итератора
- Array.prototype.filter( callbackFn( element[, index[, array]])), thisArg) создаёт новый массив со всеми элементами, прошедшими проверку, задаваемую в передаваемой функции
- callbackFn функция-предикат вызывается для каждого элемента массива, который включается в результирующий массив, если функция вернет true; для обработки элемента функции передаются параметры:
- element проверяемый элемент массива
- index Необязательный, индекс элемента в массиве
- array Необязательный исходный массив
- thisArg Необязательный значение this для колбэк-функции callbackFn
- callbackFn функция-предикат вызывается для каждого элемента массива, который включается в результирующий массив, если функция вернет true; для обработки элемента функции передаются параметры:
- .map(function callback( currentValue[, index[, array]]) {...}[, thisArg]) создаёт новый массив с результатом вызова указанной функции для каждого элемента массива
- callback функция последовательно вызывается для каждого элемента массива, а возвращаемое значение добавляется в массив общего результата:
- currentValue текущий элемент массива
- index (необязательный) индекс текущего элемента
- array (необязательный) родительский массив элемента
- thisArg (необязательный) устанавливает this для функции callback
- callback функция последовательно вызывается для каждого элемента массива, а возвращаемое значение добавляется в массив общего результата:
- статические методы
- Array.isArray(obj) - проверяет, что объект является массивом
- Операторы
- Оператор delete удаляет элемент массива по указанному индексу, но оставляет на его месте пустую ячейку!!!
- /
Object
//
- Анализ
- .hasOwnProperty(prop) возвращает логическое значение, указывающее, содержит ли объект указанное свойство.
Document
Каждая веб-страница, которая загружается в браузер, имеет свой собственный объект document. Интерфейс документа служит точкой входа для получения содержимого веб-страницы (всего DOM - дерева, включая такие элементы как <body> и <table>), а также обеспечивает функциональность, которая является глобальной для документа, например, для получения URL-адреса страницы или создания новых элементов в документе).
- .createRange()
Element
Интерфейс Element представляет собой один из объектов в Document. Этот интерфейс описывает методы и свойства, общие для всех видов элементов. Конкретные модели поведения описаны в интерфейсах, которые наследуют от Element, и добавляют дополнительную функциональность.
EventTarget > Node > Element
Range
Интерфейс предоставляет фрагмент документа который может содержать узлы и части текстовых узлов данного документа. Range может быть создан с помощью метода createRange, у объекта Document. Или объект Range можно получить с помощью метода getRangeAt, у объекта Selection (en-US). А также с помощью конструктора Range().
WindowOrWorkerGlobalScope
//
- setInterval(func, delay[, param1, param2, ...]): number
setInterval(code, delay): number предложен для Window и Worker интерфейсов. Он циклически вызывает функцию или участок кода с фиксированной паузой между каждым вызовом. Уникальный идентификатор intervalID, возвращаемый методом, позволяет впоследствии удалить запущенный setInterval c помощью clearInterval() (en-US). Метод определён с помощью миксина WindowOrWorkerGlobalScope.- func функция, которая будет вызываться каждые delay миллисекунд. Ожидается, что функция не принимает параметры и ничего не возвращает
- code Этот необязательный синтаксис позволяет вам включать строку вместо функции, которая компилируется и выполняется каждые delay миллисекунд. Однако такая форма не рекомендуется по тем же причинам, которые делают eval() (en-US) угрозой безопасности
- delay Время в миллисекундах (одна тысячная секунды), на которое таймер выполнит задержку между вызовом функции. Если задано значение меньше 10, то будет использовано число 10. На самом деле задержка может быть больше чем указано, дополнительное объяснение приведено здесь: Reasons for delays longer than specified
- param1, ..., paramN Необязательный Дополнительные параметры, передаваемые в функцию func
- clearInterval(intervalID: number) метод отменяет повторяющееся действие по времени, которое ранее было установлено вызовом setInterval()
- intervalID параметр идентифицирует ранее установленное действие
- var timeoutID = window.setTimeout(func, [, delay, param1, param2, ...]);
var timeoutID = window.setTimeout(code [, delay]); Вызов функции или выполнение фрагмента кода после указанной задержки- timeoutID - это числовой ID, который может быть использован позже с window.clearTimeout() (en-US)
- func - это функция (en-US), которую требуется вызвать после delay миллисекунд
- code - в альтернативном варианте применения это строка, содержащая код, который вы хотите выполнить после delay миллисекунд (использовать этот метод не рекомендуется по тем же причинам, что и eval() (en-US))
- delay Необязательный - задержка в миллисекундах (тысячных долях секунды), после которой будет выполнен вызов функции. Реальная задержка может быть больше
Интерфейсы веб API
URLSearchParams
!!!интерфейс определяет служебные методы для работы со строкой запроса URL.
- Конструктор возвращает экземпляр URLSearchParams
- new URLSearchParams( оbject ) /использует свойства объекта в качестве коллекции именованных параметров
- new URLSearchParams( string ) использует строку в качестве исходной query-строки для парсинга коллекции именованных параметров
- Методы
- .toString() создает корректно кодированную строку query для использования в url
var obj = { 'id': 123, 'value': 'abc' };
var params = new URLSearchParams(obj);
var queryString = params.toString();
console.log(queryString);