Предположим, у меня есть такой код:Машинопись массив нуль-сейф
function concat(a: string, b: string):string {
return a + b;
}
function firstPlusWorld(items: string[]):string {
return concat(items[0], ' World');
}
console.log(firstPlusWorld([]));
В этом случае машинописи не будет спорить о том, что первый аргумент, переданный concat
не является строкой.
В функциональной земле есть Maybe
типа и head
функции имеет типа подписи
head :: List a -> Maybe a
Есть ли способ сделать машинопись обрабатывать такие случаи?
Ненужные типы - очень хорошая концепция, но пока они интегрированы только на ограниченном количестве языков. JavaScript и его производный проект TypeScript не входят в число них. – Katana314