Выбор ответа Junior Функции, расширения и scope-функции спрашивают часто обновлено

let и also: в чём разница

Вопрос

Чем let отличается от also?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: let возвращает результат лямбды, also сам объект. Обе функции дают объект как it, но let возвращает то, что вернула лямбда (преобразование, ?.let для не-null), а also возвращает сам объект (побочный эффект в цепочке: лог, проверка). let работает с любым типом, ничего асинхронного в…

Варианты ответа

  1. let доступен только для nullable-типов через ?.let
  2. also выполняется асинхронно после основной цепочки
  3. let возвращает результат лямбды, also сам объектправильный ответ
  4. let использует this, а also использует it

Разбор

Обе функции дают объект как it, но let возвращает то, что вернула лямбда (преобразование, ?.let для не-null), а also возвращает сам объект (побочный эффект в цепочке: лог, проверка). let работает с любым типом, ничего асинхронного в scope-функциях нет. Через this объект доступен в run, with и apply.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.