Чем отличаются lambda и Proc в Ruby?
Оба варианта представляют объект Proc, но по-разному проверяют аргументы и обрабатывают return. Показываем различие на небольших примерах.
Читать ответПодготовка к интервью
Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.
Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.
Каталог
Оба варианта представляют объект Proc, но по-разному проверяют аргументы и обрабатывают return. Показываем различие на небольших примерах.
Читать ответОбъяснение вложенных функций и замыканий на явно выбранном примере Python: локальное имя, возврат функции наружу и доступ к переменным внешней области.
Читать ответЧем отличаются throw 'message' и throw new Error('message')? throw 'message': выбрасывает примитив string и не формирует стек ошибки throw new Error('message'): создаёт объект Error со стеком вызовов Error…
Читать ответpreventDefault отменяет предусмотренное браузером действие, связанное с событием: например, переход по ссылке или отправку формы. Этот метод применяют, когда стандартное действие требуется заменить собственной логикой…
Читать ответРасполагают ли стрелочные функции методами call, apply и bind? Стрелочные функции получают методы call, apply и bind через наследование от Function.prototype Однако bind не способен изменить контекст this стрелочной…
Читать ответЗачем нужны State Manager и Контекст, если можно использовать обычные переменные? состояние управляется централизованно и предсказуемо локальные переменные не подходят для сложных связей между компонентами снижается…
Читать ответЗачем нужны методы call, apply и bind в JavaScript? Позволяют явно задавать контекст выполнения функции (this) call: запускает функцию, получая аргументы через запятую apply: запускает функцию, принимая аргументы…
Читать ответКак удалить или вставить произвольные элементы массива? операции с массивами, базовые действия удаление: метод splice(start, deleteCount, ...items) splice удаляет из массива элементы, начиная с позиции start, в…
Читать ответсначала анализировать имеющееся решение и находить "узкие места" — операции, обладающие наибольшей сложностью выбирать алгоритмы с более высокой эффективностью и меньшей асимптотикой, например O(n log n) вместо O(n²)…
Читать ответДля работы с асинхронными HTTP-запросами через fetch API применяется AbortController, позволяющий отменять операции Сначала создаётся контроллер: const controller = new AbortController() Затем его сигнал передаётся…
Читать ответДля синхронных исключений применяют глобальный обработчик ошибок через window.onerror Чтобы подробно отслеживать ошибки загрузки ресурсов и JavaScript, используют window.addEventListener('error', ...) Событие…
Читать ответКак получать данные в реальном времени? задача: передавать данные с минимальной задержкой WebSocket: постоянное двунаправленное соединение SSE (Server-Sent Events): передача данных от сервера клиенту MQTT: лёгкий…
Читать ответ