JS Flashcards
Что такое Promise?
Это объект типа Promise для удобного написания асинхронного кода
Представляющий результат успешного или неудачного завершения асинхронной операции (resolve ,reject)
Какие его преимущества у Promise перед callback(2)
1.Promise позволяет использовать методы then() и catch(), которые делают код более читаемым и легким для понимания.
- Promise позволяет избежать callback hell ( много вложенных callback-функций).
Что такое Event Loop
EventLoop - это бесконечный цикл, который ожидает задачи, выполняет их и потом снова ждет поступление новых задач.
Он необходим для того, чтобы работая с асинхроном у нас все не зависало ,тк js является однопоточным и может выполнять одновременно лишь 1 действие.
–
У нас есть стэк
,webApi (timeout) и очередь задач
Что такое экмаскрипт?
На мой взгляд это просто апдэйты js ,который просто добавляют нам новый синтаксис, чтобы нам было удобнее работать.
Какие есть нововведения в последнем ES6 (5)
- let/const.
- Обратные кавычки
${smth}
(шаблонные строки) - Стрелочные функции
- Деструктуризация {name,age} = obj
- spred […arr1,…arr2]
Чем отличается slice от splice?
- slice обрезвает массив ,мы укзывает от и до куда и возварщает массив slice(от,до)
- splice изменяет текущий массив и благодаря ему мы можем удалить или заменить элементы splice(где,сколько)
e.preventDefault и e.stopPropagentaion?
1 отменяет поведение по умолчанию
2 Всплытие
Как работать с асинхронным кодом?
async await ( возвращает промис )
Чем отличается function expression от function decloration?
expression - это просто обычная функция ,а decloration это функция которую мы присвоили к какой-то переменной
Что такое hosting ? (поднятие)
Это механизм ,который делает возможным использование функций до их объявления function
Или переменных объявленных через var
Какие есть способы хранить информацию на стороне клиента?(3)
- localStorage
- sessionStorage
- cookie
Какие есть типы http запросов? (5)
- get
- post create smth
- put update smth
- patch update smth
- delete delete smth
Разница между put и path ?
patch это частичное обновление например userName ,а put полное
Что такое иммутабельность и мутабельность в js?
Если при использовании какого-то метода он изменяет к примеру массив ,то это мутабелбный метода
Как не мутируя объект поместить туда еще 1 элемент?
Через спред , елм
[…arr,el]
Что такое чистая и нечистая функция в js?
Чист ф - это функция без сайд-эффектов. т.е при одинаковых аргументах возвращают одинаковый результат
Чистая функция не мутирует к примеру массив, пример slice(чистая) и splice(нет)
Микро и макро таски
promis - микротаска
setTimeout - макротаска
У промисо приоретеность выше,чем у setTimeOut
Какие есть типы данных ?(8)
number, string, boolean, null, undefined, object и symbol,bigInt
Как скопировать массив ?
JSON
Object assign
…
Что такое скоуп ?
Это та область в которой будет доступна переменная
let var
Как удалить Obj
let obj1 = {}
delete obj1
Циклическая ссылка
Сборщик мусора
Headers в http запросах
content-type: application/json
Bearer token
метод запроса
WebSocket
Как сделать приватные поля в js
При помощи #
class MyClass {
#privateField;
}
какие есть состояния у promise
ожидание (pending): начальное состояние, не исполнен и не отклонён.
исполнено (fulfilled): операция завершена успешно.
отклонено (rejected): операция завершена с ошибкой.
Какие есть методы у Promise ?
resolve()
reject()
all()
race()
Как написать точный таймер на Js
Запомнить дату старта и потом в интервале замерять дату и изменять дату между ними
Рекурсия ,написать функцию которая принимает массив массивов с разной вложенностью и возвращает массив нормальный массив
return array.flat(Infinity);
Есть некоторая строка (var str = ‘fgfggg’;), что будет, если мы возьмем str[0]?
Первый элемент строки
Реализовать методы, которые в процессе выполнения строки (2).plus(3).minus(1) дали бы на выходе 4.
Number.prototype.plus = function (value) {
return this + value;
}
Number.prototype.minus = function (value) {
return this - value;
}