Демо-вопросы WhyCode

Ниже — короткие примеры из формата с вариантами ответов. Полный каталог (500+ вопросов, фильтры, пояснения) — после регистрации.

  1. Python

    1. Что выведет выражение: `print([] or {})` (Python 3)?

    • A) []
    • B) {}
    • C) None
    • D) TypeError

    В Python пустой список `[]` и пустой словарь «falsy». Выражение `A or B` при ложном `A` возвращает `B`, поэтому `[] or {}` приводит к словарю; `print` выведет строковое представление `dict`.

  2. JavaScript

    2. Чем `let` отличается от `var` в основном (в блоке `if`)?

    • A) `let` всплывает на весь scope файла, как `var`
    • B) `let` имеет блочную область видимости
    • C) В ES6 разницы нет
    • D) `let` нельзя переопределить

    `var` функционально- или глобально-скоуп, `let`/`const` — блочно. Это классическое ожидание на интервью по JS.

  3. Go

    3. Чем по умолчанию инициализируется локальная переменная `var x int`?

    • A) 1
    • B) nil
    • C) 0 (zero value)
    • D) undefined

    Zero value для `int` — 0, для ссылок — `nil` и т.д. Часто спрашивают на go-собеседованиях.

  4. Python

    4. Что делает `GIL` в CPython в первую очередь?

    • A) Ограничивает одновременное выполнение байткода в одном процессе в типичной реализации
    • B) Ускоряет любые CPU-bound задачи
    • C) Запрещает использование `threading`
    • D) Это диспетчер asyncio

    GIL (Global Interpreter Lock) — про модель исполнения CPython, не про запрет тредов, а про параллелизм на CPU-нагруженных участках кода.

  5. JavaScript

    5. Чем `===` отличается от `==` в JavaScript?

    • A) `===` строгая проверка без приведения типов
    • B) `==` строгая, `===` с приведением
    • C) Они эквивалентны
    • D) `===` только для объектов

    `==` с приведением типов (с неочевидными краевыми случаями), `===` сравнивает и тип, и значение — основа вопросов на junior/middle фронт.

Нужен полный доступ к тестам, статистике и BigTech-наборам?

Зарегистрироваться

На главную