TypeScript: void возвращаемый тип, преобразованный в любой тип?
Кажется, я не в состоянии понять, почему следующий код не вызывает ошибку:
var rg: {(): void;}[] = [];
rg.push(function():string {return "";})
Я четко заявляю, что тип должен быть массивом функций, которые возвращаютvoid
Однако я нажимаю там функцию, которая возвращаетstring
и все же компилятор не жалуется. Если я изменю определениеrg
в
var rg: {():number;}[] = [];
Компилятор начинает жаловаться.
Является ли это ошибкой или именно так должен работать возвращаемый тип void (т.е.void
используется, в основном делает его таким же, как тип возвратаany
)?