Основы Typescript
Теория: Тип Void
В этом уроке мы рассмотрим тип void. Он указывается как возврат для функций, которые ничего не возвращают.
Тип void выводится автоматически, когда мы работаем с пустой функцией или если внутри функции нет инструкции return:
В JavaScript подобные функции возвращают undefined, но в TypeScript void и undefined — это разные вещи. Они различаются по контекстной типизации. А происходит это из-за особенностей работы самого JavaScript. Самый яркий пример — метод forEach().
Метод forEach() не использует данные, возвращаемые переданным колбеком, который вызывается внутри. Было бы логично определить возврат как undefined, но посмотрим на пример:
Метод push() возвращает новую длину массива. Если бы forEach() требовал от колбека возврат undefined, то такой код привел бы к ошибке компиляции. Его пришлось бы переписать. Например, так:
Тип void помогает не создавать такой код. Он позволяет возвращать любые данные, но делает их использование бессмысленным:
Существует единственная ситуация, когда указание void явно запрещает возврат из функции. Это определение функции вне контекста использования, когда ее тип указывается явно:
Еще void считается оператором JavaScript, поэтому важно не запутаться с ним. Он вычисляет выражение, которое следует за ним и возвращает undefined:





