В машинописном тексте тип функции определяется после столбцов: поэтому типы возвращаемых значений функции могут быть простыми, как
1 - ничего не будет : void .
пример:
function createSquare(config: SquareConfig): void {
// some code
alert('just not returned code');
}
2- число : число , строка : строка
function createSquare(config: SquareConfig): string {
// some code
return 'some strings ';
}
3- массив чисел : массив или строк: массив
function createSquare(config: SquareConfig) :Array<string> {
// some code
return ['some strings '];
}
4- (сложный тип) как и объект, который содержит два свойства, как в вашем случае объект.
{цвет: строка; area: number}
Это означает, что функция должна возвращать объект с двумя цветами Porperties, и его значение должно быть строкой, а другое свойство будет иметь имя area со значением, которое принимает только числа.
function createSquare() :{ color: string; area: number } {
return { color: 'red', area: 5 };
}
console.log(createSquare());
В этом случае интерфейсы помогли нам упростить написание этого кода, как показано ниже.
interface AnyTypeAsReturn {
color: string;
area: number ;
}
function createSquare() :AnyTypeAsReturn {
return { color: 'red', area: 5 }
}
const square = createSquare();
это упрощает способ написания кода и может быть повторно использован в нашем приложении