169 похожих чатов

Всем здрасте. У меня есть тип JsonTypes Он должен принимать определённые типы

+ массив с такими же типами.
Но к сожалению почему-то TypeScript для массива ошибку не выдаёт, что делать?
type ValidTypes = boolean | number | string | null | object | bigint;
type JsonTypes = ValidTypes | Array<ValidTypes>

const test: JsonTypes = undefined // Error
const test: JsonTypes = [undefined] // Всё Ok, хотя должна быть ошибка.

16 ответов

27 просмотров

Потому что массив это true

Жора-Змейкин Автор вопроса

в курсе, но это тут причём? я чего-то не пойму..

Typeof [] это обьект

object = any

Жора-Змейкин Автор вопроса

а как мне тогда сделать и так, чтобы он объекты пропускал.... просто объекты

Record<any, any>

Record<string, unknown>

Переименуйте чат в Anyscript

))))

Тут ребята в чате по поиску работы на js выкладывали проекты свои, типа на тайпскрипте. Я когда код смотрел также в голове вертелось что они на ANYScript написаны)))

Большая часть ребят в продакшене и пишет на anyscript. Это абсолютно обычная и нормальная практика.

Ммм а какой смысл тогда вообще в ТС, или это сарказм?

Это небольшая насмешка и, конечно же, сарказм над теми, кто тащит этот бедный тс на проекты и особо не понимая, зачем он нужен, вытворяют такие вещи.

Ну, а потом пишут в резюме опыт работы с typescript 1.5 года. Хотя кроме как any пихать в любой непонятно ситуации не умеют 😁

Иногда бывает полезно воткнуть any, но это конечно безусловный технический долг.

Проще тс выбросить

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта