The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Доступен TypeScript 6.0, последний выпуск с компилятором на JavaScript

24.03.2026 11:54 (MSK)

Компания Microsoft опубликовала релиз TypeScript 6.0, языка для разработки web-приложений, расширяющего возможности JavaScript, и связанного с ним инструментария. Код компилятора, транслирующего код TypeScript в представление JavaScript, распространяется под лицензией Apache 2.0, разработка ведётся в публичном репозитории через сервис GitHub. Спецификации языка открыты и опубликованы в рамках соглашения Open Web Foundation Specification Agreement.

Язык TypeScript расширяет возможности JavaScript, оставаясь полностью обратно совместимым, что упрощает перевод существующих приложений на TypeScript. Итоговое приложение на TypeScript компилируется в обычный JavaScript, который можно выполнить в любом современном web-браузере или использовать c платформами Node.js, Bun и Deno. В программах на TypeScript можно использовать существующие JavaScript-библиотеки. От JavaScript язык TypeScript отличается средствами для явного определения типов, а также поддержкой использования полноценных классов. Статическая типизация позволяет избежать многих ошибок в процессе разработки, даёт возможность задействовать дополнительные техники оптимизации, упрощает отладку, делает код более читаемым и простым для доработки и сопровождения.

Ветка TypeScript 6.0 отмечена как последняя, поставляемая с компилятором на языке TypeScript, транслируемом в JavaScript. В ветке TypeScript 7.0 проект перейдёт на новый компилятор typescript-go (tsgo), разрабатываемый с 2024 года на языке Go. Новый компилятор существенно увеличит скорость сборки, уменьшит потребление памяти и сократит время запуска редакторов кода, что решит наблюдаемые ныне проблемы с масштабированием при использовании в очень больших проектах. Также будет предоставлен компактный инструментарии командной строки, позволяющий быстро собирать код для проверки его работоспособности.

Ветка TypeScript 6.x продолжает поставляться со старым компилятором, но включает отдельные изменения для подготовки к миграции на новую реализацию. Впуск TypeScript 6.0 позиционируется как связующее звено между ветками TypeScript 5.9 и 7.0, и содержит изменения, главным образом нацеленные на упрощение будущего перехода на ветку TypeScript 7.0. Для тестирования доступен предварительный выпуск TypeScript 7.0, опубликованный в форме дополнения к VSCode и NPM-пакета. После релиза TypeScript 7.0 ветки 6.x и 7.x будут сосуществовать и сопровождаться параллельно до тех пор, пока ветка TypeScript 7.x не достигнет зрелого состояния, готового полностью заменить старый инструментарий.

Среди изменений в TypeScript 6.0:

  • Реализована возможность использования префиксов "#/" в стиле Node.js для импорта псевдонимов модулей, определённых внутри пакета, вместо указания относительных путей. Например, 'import * as utils from "#root/utils.js"' вместо 'import * as utils from "../../utils.js'.
  • Добавлен флаг "--stableTypeOrdering" для включения применяемого в ветке TypeScript 7 алгоритма детерминированной сортировки типов внутри компилятора, гарантирующего одинаковый порядок определения типов в любых окружениях. Режим рекомендуется использовать только для диагностики возможных проблем перед переходом на ветку TypeScript 7, так как его включение в TypeScript 6.0 может замедлить компилятор на 25%.
  • Реализованы встроенные типы для API Temporal, предлагающего альтернативные методы для работы с датами и временем, позволяющие манипулировать датами с учётом и без учёта часовых поясов, конвертировать время, форматировать вывод и выполнять арифметические операции со временем.
  • Добавлены типы для upsert-методов getOrInsert и getOrInsertComputed в объектах Map и WeakMap, возвращающих уже имеющееся в коллекции значение, ассоциированное с указанными ключом, или создающих новую запись, если ключа не нашлось.
  • Добавлена поддержка функции RegExp.escape, экранирующей спецсимволы в строках для из безопасного использования в качестве шаблона внутри регулярных выражений, задаваемых через конструктор RegExp().
  • Изменены настройки по умолчанию:
    • Параметр rootDir теперь указывает на текущий каталог ".", в котором размещён файл конфигурации tsconfig.json, в не на типовой каталог с исходным кодом.
    • Поле "types" в tsconfig.json теперь определяется как "[]" вместо "["*"]", т.е. TypeScript теперь по умолчанию не включает все пакеты из "node_modules/@types" и требует явного указания глобальных пакетов (например, ["node", "jest"])). Изменение приводит к сокращению времени компиляции на 20-50%.
    • Значение target теперь включает актуальную версию ECMAScript (es2025). В поле tagret объявлена устаревшей версия es5 (ECMAScript 5), в качестве минимальной заявлена версия es6 (ECMAScript 2015).
    • По умолчанию активирован режим strict для строгой проверки типов.
    • Параметр module по умолчанию выставлен в значение "esnext", включающем поддержу JavaScript-модулей (ESM) с директивами import и export, вместо устаревшего формата CommonJS.
  • Для повышения производительности компилятора объявлены устаревшими:
    • Опция "--baseUrl".
    • Использование ключевого слова module для определения пространств имён модулей ("module Foo { ... }" вместо "namespace Foo { ... }").
    • Опция "--outFile " (следует использовать внешние упаковщики, такие как esbuild, Rollup, и Webpack);
    • Режим "--moduleResolution: classic" (рекомендуется использовать nodenext или bundler).


  1. Главная ссылка к новости (https://devblogs.microsoft.com...)
  2. OpenNews: Microsoft переписывает компилятор TypeScript на языке Go
  3. OpenNews: Опубликована платформа Node.js 23.0 с начальной поддержкой языка TypeScript
  4. OpenNews: Предложен компилятор исходных текстов на языке TypeScript в машинный код
  5. OpenNews: Доступен язык TypeScript 2.0, продвигаемый Microsoft в качестве дополнения к JavaScript
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65059-typescript
Ключевые слова: typescript
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (114) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 13:19, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    >В ветке TypeScript 7.0 проект перейдёт на новый компилятор typescript-go (tsgo), разрабатываемый с 2024 года на языке Go.

    Очень несовременно, неожиданно для Микрософта. Мы все знаем, какой ЯП должен использоваться для разработки нового компилятора.

     
     
  • 2.2, Аноним (2), 13:25, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Bash?
     
     
  • 3.35, Аноним (35), 15:06, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +5 +/
    powershell же, ну
     
  • 3.56, Аноним (56), 16:32, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Tcsh!
     
  • 3.103, zionist (ok), 20:24, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Awk
     
  • 2.3, q (ok), 13:26, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Будь немного снисходителен к неосиляторам борова. Хотя что там осиливать, его правила умещаются на клочке бумаги размером со спичечный коробок.
     
     
  • 3.6, Tron is Whistling (?), 13:29, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Первое правило: перед боровом встань на четвереньки?
     
     
  • 4.10, Жироватт (ok), 13:33, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Первое правило борова: никому не рассказывай о своих экспериментах с боровом
    Второе правило борова: всем и каждому навязывай использование борова
    Третье правило борова: везде используй аффинажные типы, особенно для организации RCE
    Четвёртое правило борова: не ешь дьяблочко, его съест боров
    Пятое правило борова: ансейф можно использовать, но яростно отрицай его использование
    Шестое правило борова: блаженны верующие в б-га нашего, борова, да скомпилируются они
    Седьмое правило борова: те, кто делает ошибки на Швятом Йазые Борова - те неправильные программисты
    Восьмое правило борова: не ешь дьяблочко, кому я сказал!
    Девятое правило борова: да будь проклят тот, кто смеет находить "технологические отверстия" для RCE в языке б-га нашего, Борова.
    Десятое правило борова: Проект без CoC'а - не существует. Добавь борова проверять CoC
     
     
  • 5.21, Аноним (21), 14:30, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А как же: отрицай все ошибки называя их логическими и вообще не считаецо?
     
     
  • 6.24, Аноним (24), 14:36, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 5.40, Аноним (40), 15:39, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >аффинажные типы

    Кто-то до сих пор не выучил, как писать это определение правильно.

     
  • 4.11, Аноним (11), 13:38, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 2.4, Жироватт (ok), 13:27, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Free Pascal для gui
    Common Lisp для движка разбора и кодогенерации
     
  • 2.5, Аноним (5), 13:28, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А какой? С#?
     
     
  • 3.7, Жироватт (ok), 13:29, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    JavaEE
     
     
  • 4.54, eugener (ok), 16:26, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    это не язык, это спецификация.
     
  • 2.8, Аноним (8), 13:29, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Для того, чтобы тот язык использовался, надо сначала написать на другом.
     
  • 2.16, Аноним (16), 14:12, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Лазутчики из Гугла внедрили враждебную технологию вместо C# это диверсия теперь компилятор Go шлёт телеметрию про разработчиков из Майков.

    В плане один текст преобразовать в другой у Go нет совершенно никаких преимущеста по сравнению с C#.

     
     
  • 3.23, Аноним (23), 14:36, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > нет совершенно никаких преимущеста

    А недостатки есть?

     
     
  • 4.43, Аноним (43), 15:42, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Сам go — один большой недостаток.
     
  • 3.26, Hac3r (?), 14:40, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    с разморозкой
    это уже обсудили пару лет назад
    они выбрали Go (рассматривали C# и Rust) потому что Go ближе к синтаксису TypeScript на котором написан текущий компилятор
    Так как у них небольшая команда для этого им было проще взять Go для переписывания практически как есть
     
     
  • 4.36, Аноним (35), 15:11, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Го они выбрали, жалко писать не научились на нем
    Открыл этот tsgo/main, а там семь строчек вынесены в отдельный вызов лишь бы не в самой main() вызывать

    впрочем по имени и цвету коммитера на аватарке дело пахнет и пахнет неприятно

    вощем веб абизьян опять обманули бананом, подсунув гниль вместо компилятора

    Не удивлен

     
     
  • 5.62, похнапоха (?), 16:55, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Оооо, хеллоуврот прогер вылез. В сигнатуре функции os.Exit() параметры типа int. Функция runMain() как раз возвращается int. Люди сделали вызов одной функции прямо в аргументе другой - нормальная практика.
    Могли бы конечно нагородить вложенную функцию в main(), получить рузультат вызова вложенной функции и передать его в os.Exit(). Либо писать анонимную функцию в качестве аргумента. Зчем все эти извращения? Поэтому люди сделали правильно и лаконично!
     
     
  • 6.84, Аноним (84), 17:59, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    О, воннаби профи вылез, смешите пидеть
    Они сделали однострочную функцию ради ничего, это каргокульт из страны где праздник обмазывания навозом в ходу. Он не решает никакой проблемы, только добавляет один лишний вызов
     
     
  • 7.91, pavel_simple. (?), 18:32, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > О, воннаби профи вылез, смешите пидеть
    > Они сделали однострочную функцию ради ничего, это каргокульт из страны где праздник
    > обмазывания навозом в ходу. Он не решает никакой проблемы, только добавляет
    > один лишний вызов

    компиллер может и заинлайнить. Но в странности написания сего участка кода полностью согласен. но это фигня. А вот там, где у них windows специфик без билд тэга -- это уже отдаёт не очень

     
  • 7.107, Bottle (?), 21:38, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Рано или поздно у тебя эта функция превратится во многострочную, когда будешь отлаживать код на краевых случаях и твоя функция не будет сходиться с требуемым результатом.
    Плюс твой код будут читать другие люди, не забывай это, и им не нужно знать, какие костыли ты придумал для корректной работы.
     
  • 4.51, Аноним (16), 16:22, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Надеюсь ты сам понимаешь что большую чушь придумать сложно.
     
     
  • 5.61, Hack3r (?), 16:53, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    в чем ?
     
  • 4.89, Аноним (89), 18:24, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я думаю это фигня. Чем он там ближе к синтаксису и когда это имело значение для компилятора/транслятора? Просто за Шарпом пришлось бы тащить дотнет рантайм, который на машинах с разработкой на Тайпскрипте нафиг не нужен. Представьте, помимо всего js-мусора в проект всрать еще и весь Шарп. А Го -- это один бинарник.
     
  • 3.28, 6омжаним (ok), 14:41, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >> В плане один текст преобразовать в другой у Go нет совершенно никаких преимущеста по сравнению с C#.

      ДА! создатель языка C# выбрал Go, вместо своего творения, потому что нет преимущества, тебе же пердежисту лучше знать.
      Вот поэтому возьми и напиши свою версию компилятора на C# - это же всего-лишь:
    преобразовать один текст в другой.
    Докажи, что он был не прав.

     
     
  • 4.52, Аноним (16), 16:24, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Компания это не бог, как ты считаешь, а просто вывеска где куча разных людей. И если кто-то хочет сделать полянку он это делает.  
     
     
  • 5.98, 6омжаним (ok), 19:17, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ха-ха-ха, "компания это просто вывеска, где куча разных людей" - это ты щас сам себя хоронишь.
    Это не какой-то чел в углу решил "сделать полянку на Go". Это официальный проект Microsoft, которым занимается команда TypeScript под руководством Anders Hejlsberg (того самого, который C# создал).
    Они делали прототипы на C# (прямо написано в их GitHub discussion). Протестировали несколько языков, включая C#, и выбрали Go.

    Так что иди уже и сделай свою версию компилятора на C#, раз "нет никаких преимуществ" и "просто преобразовать один текст в другой".
    А пока ты просто очередной 0чкохлюп, который хлюпает комментариях: хлюп-хлюп.  Когда сделаешь, тогда пиши, а пока до связи.

     
  • 3.41, Аноним (40), 15:40, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >это диверсия теперь компилятор Go шлёт телеметрию про разработчиков из Майков.

    gcc-go изобретён

     
     
  • 4.53, Аноним (16), 16:26, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    И? Ты для себя сначала ответит с какой версией go этот твой gcc-go совместим и почему, потом попробуй подумать головой.
     
  • 2.81, Джон Титор (ok), 17:34, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >>В ветке TypeScript 7.0 проект перейдёт на новый компилятор typescript-go (tsgo), разрабатываемый с 2024 года на языке Go.
    > Очень несовременно, неожиданно для Микрософта. Мы все знаем, какой ЯП должен использоваться
    > для разработки нового компилятора.

    Анонсировали они давно достаточно. Что тут неожиданного? А на rust они вполне ещё могут перейти

     
  • 2.112, Сладкая булочка (?), 22:11, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Мы все знаем, какой ЯП должен использоваться для разработки нового компилятора.

    А вот Андреас Хелсберг решил по другому. На то он и technical fellow.

     

  • 1.9, Аноним (9), 13:32, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Вот правда надеюсь, что последний.
     
     
  • 2.18, Аноним (18), 14:24, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чем вам так не угодил этот отличный (без шуток) язык? Такую мощной и в то же время удобную систему типов ещё поискать - разработчики отлично смогли соблюсти баланс
     
     
  • 3.20, Аноним (16), 14:27, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В coffescript тоже все было хорошо, но злобные майки все подмяли под себя как обычно.
     
     
  • 4.25, Аноним (18), 14:37, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    В CoffeeScript вообще не было и нет системы типов. Это такая же рантайм-лапша как в обычном JS
     
  • 4.79, Джон Титор (ok), 17:28, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > В coffescript тоже все было хорошо, но злобные майки все подмяли под
    > себя как обычно.

    Может вы изначально дохлую подделку от Google имели в виду? Dart?

     
  • 3.30, Аноним (30), 14:56, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Настолько мощная система типов не нужна (без шуток). Многие веб-мaкаки, как обычно, не зная меры, кинулись программировать на типах, безмерно запутывая код.
     
     
  • 4.34, Аноним (34), 15:05, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Согласен, многие библиотеки грешат огромным количеством ненужных дженериков.
    Но все равно это лучше, чем портянки pure JS кода.

    А так-то сдуру можно на любом языке написать дутко переусложнённый код. Вспомните ООП-истерию в Java или более свежее засилие ФП в стиле «написал строку без каррирования - вон из профессии».
    Со временем всё устаканивается и принимает адекватные формы

     
     
  • 5.39, Аноним (30), 15:38, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Да вот в случае с TS как-то не устаканивается, а только усложняется на радость веб-мaкакам. Сейчас довольно много вещей проще самому занвоо написать, чем тащить в код библиотеку, написанную на дженериках, стащенных откуда-нибудь из ts-generic-collections и им подобных рассадников "гениальных" идей.
     
     
  • 6.57, Смузихлеб забывший пароль (?), 16:41, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В веб идёт немало горе-проггеров с других яп( вплоть до жабы и шарпа )
    И вот они, будучи полностью убеждёнными что они-то как раз не веб-мак.аки и вообще, без типизации-классов-итд-итп никуда, каменный век, тянут тонны всякого мусора
    Некоторые даже умудряются писать на этом почти как, например, на жабе, что становится ещё хуже. Простейший функционал размазан по куче файлов с огромной вложенностью в проекте. Это ж вебма.каки всё просто и наглядно делают, а порой и быстро - то ли дело выгнанный на мороз недо-ынтыпрайсс погромист, который то же самое вместо одного дня запросто будет пилить неделю/месяц и навалит целую гору ***
     
  • 4.46, Аноним (40), 15:50, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Многие веб-мaкаки
    >безмерно запутывая код

    Код не понимаете вы, но мaкака почему-то не вы. Странно.

     
     
  • 5.48, Аноним (30), 16:00, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А где я написал, что не понимаю? Я как раз вижу, что можно написать то же самое, но намного проще и читаемее.
     
     
  • 6.59, Аноним (40), 16:50, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Нужно написать не просто "проще и читаемее", а так, чтобы оно не развалилось хотя-бы спустя полчаса после коммита. И вот с этим у любителей "проще и читаемее" огромные проблемы.
     
     
  • 7.72, Аноним (72), 17:10, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    У тех, кто "проще и читаемее" проблем нет, потому что пишут явно читаемый и работающий код, не полагалясь на магию инструментария.
     
     
  • 8.80, Аноним (40), 17:30, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Простым и читаемым код может быть, когда влезает в окно терминала 80 24 Когда у... текст свёрнут, показать
     
  • 8.83, Аноним (83), 17:39, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Окей, возможно, ваш подход еще имел смысл примерно полгода назад Сейчас код пиш... текст свёрнут, показать
     
     
  • 9.90, Аноним (72), 18:26, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ключевое слово - нормальной , о чем я и толкую У TS она уже давно напоминает с... текст свёрнут, показать
     
     
  • 10.93, Аноним (83), 18:46, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Приведите примеры нормальной , пожалуйста ... текст свёрнут, показать
     
     
  • 11.104, Аноним (72), 21:21, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Мне лень углубляться в дискуссию Выше я уже дал пример популярного репозитория ... текст свёрнут, показать
     
     
  • 12.105, Аноним (72), 21:23, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Нормальные - соответственно те, где до такой шизы не доходят ... текст свёрнут, показать
     
     
  • 13.108, Аноним (30), 21:43, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Лови ещё шизы https github com millsp ts-toolbelt https code lol post progr... текст свёрнут, показать
     
  • 13.109, Аноним (83), 21:43, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • –2 +/
     
  • 13.110, Аноним (83), 21:46, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 3.44, Аноним (40), 15:45, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Чем вам так не угодил этот отличный (без шуток) язык?

    На скольких языках вы писали, раз вы называете его отличным?
    >Такую мощной и в то же время удобную систему типов ещё поискать

    Любая переменная может быть типа Any, что полностью перечёркивает весь смысл TS-а.

    Вы на Haskell писали? На Ocaml? SML? Список языков можно продолжать.

     
     
  • 4.58, Смузихлеб забывший пароль (?), 16:43, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Некоторые слишком часто упоминают всякие хамскели и окамлы
    Но, если оные столь хороши, то много ли на них новых проектов делается ?
     
     
  • 5.63, Аноним (40), 16:58, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 4.66, Аноним (18), 17:05, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Как дополнительная возможность может быть в минус any в реальном коде почти н... большой текст свёрнут, показать
     
     
  • 5.87, Аноним (40), 18:13, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Добавление данной возможности отрицательно влияет на баланс фич в языке Благода... большой текст свёрнут, показать
     
     
  • 6.95, Аноним (18), 18:53, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Только если вы сами приводите тип к any или принимаете any извне - всё в ваш... большой текст свёрнут, показать
     
     
  • 7.99, Аноним (40), 20:12, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А если быть просто внимательным , то и ts не нужен, можно сразу же на js писать... большой текст свёрнут, показать
     
     
  • 8.100, Аноним (100), 20:20, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    так json parse и есть unsafe откуда знаешь, что там прилетело в строке, не пров... текст свёрнут, показать
     
     
  • 9.106, Аноним (40), 21:26, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Из типа функции Например https ocaml-community github io yojson yojson Yojson... текст свёрнут, показать
     
     
  • 10.111, Аноним (18), 21:54, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А как быть, если надо залогировать всё что пришло, если вдруг формат не совпал с... текст свёрнут, показать
     
     
  • 11.116, Аноним (40), 23:41, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Работа с json-ом состоит из двух шагов вначале строка преобразуется в синтаксич... большой текст свёрнут, показать
     
  • 3.45, Аноним (43), 15:45, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Этот язык хорош только тем, что он улучшил JS. Во всём остальном он хуже пожалуй всех других языков. Потому что он наследовал родовую травму JS.
     
  • 3.70, Илья (??), 17:09, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Прелесть JS в самом JS и его динамике, и том, что его компилировать не надо.

    Если хочешь компилировать типизируемый язык - берёшь сишарп.

    Тайпскрипт уступает обоим и в своей концепции странноват.

     
     
  • 4.86, Аноним (84), 18:04, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Если бы жс сидел в своем фронтенд загончике, вопросов бы было к нему меньше

    а халтурщики, не смогшие в нормальные языки, пошли впихивать бинарники с жс, электроноподелки, даже в терминал протекло

    Причем что качество, что производительность таких... кхм.. изделий как катились в дно, так и продолжают, даже ход набирают

     
  • 4.88, Аноним (40), 18:17, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Прелесть JS в самом JS и его динамике, и том, что его компилировать не надо.

    Вы в каком году живёте? С появлением всяких ангуляров и реактов, js перестал подключаться в виде отдельных файликов, и стал требовать достаточно длительного времени сборки.

     
  • 3.92, penetrator (?), 18:41, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    система типов там ужасна, она не делает код прозрачнее, duck typing это чушь, ну и вечная рекурсия во время компиляции - отличный пример мс шлака

    я в принципе посредственно отношусь к JS, но скажем так, последние спецификации ECMAScript так прокачали его, что я бы лучше выбрал ванильный JS, а не TS в 100% случаев

     
     
  • 4.97, Аноним (18), 19:00, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > система типов там ужасна, она не делает код прозрачнее

    А как вы проверяете что в функцию передали столько аргументов, сколько надо и тех типов, которые ожидаются? Или вы в целом против любой типизации?

    > ну и вечная рекурсия во время компиляции - отличный пример мс шлака

    Это про что?

    > я в принципе посредственно отношусь к JS, но скажем так, последние спецификации ECMAScript так прокачали его что я бы лучше выбрал ванильный JS

    Так спецификации на JS не добавляют ничего про типизацию, а TS - напротив, добавляет только типизацию

     

  • 1.12, Аноним (12), 13:55, 24/03/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     
  • 1.13, Аноним (16), 14:08, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Единственный нормальный джаваскрипт.
     
  • 1.14, Аноним (89), 14:09, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Почему в браузерах просто не добавят инетерпретатор Typescript? Уже почти вся разработка на нем.
     
     
  • 2.17, Аноним (18), 14:20, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А зачем? Браузер даёт рантайм и VM под низкоуровневый "байткод" (JS). Всё остальное - сверху.
    Всё равно ведь без фазы компиляции исходников в готовый бандл не обойтись, если это не совсем уж простенький HTML.
    Даже в до-TS времена уже существовал babel, который транспилировал один JS в другой JS просто ради совместимости со старыми версиями
     
  • 2.19, Аноним (16), 14:26, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Зачем там интерпретатор, когда можно typescript сразу транслировать в wasm?
     
     
  • 3.22, Аноним (18), 14:31, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В TypeScript (JS) есть eval() для JS-кода, а это не поддерживается в wasm. Плюс, в wasm нет прямого доступа к DOM.
    Это в совокупности делает прямую компиляцию в wasm невозможной без кучи костылей и ограничений
     
  • 3.77, Джон Титор (ok), 17:22, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Зачем там интерпретатор, когда можно typescript сразу транслировать в wasm?

    Если его транслировать в wasm, в коде будут много ограничений. Но да, зато производительно.

     
  • 2.76, Джон Титор (ok), 17:20, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Почему в браузерах просто не добавят инетерпретатор Typescript? Уже почти вся разработка
    > на нем.

    Простите, по какому стандарту, вы предлагаете Typescript компании Microsoft сделать по умолчанию для каких браузеров?

     
  • 2.101, Аноним (100), 20:22, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    nodejs так уже умеет (брать typescript и игнорировать типы)
     
     
  • 3.102, Аноним (100), 20:23, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    а что там в браузерах, никого не волнует, потому что все равно бандлы собирать
     

  • 1.15, Джон Титор (ok), 14:11, 24/03/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     

  • 1.29, Аноним (29), 14:46, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Все по настоящему производительные вещи пишутся и оптимизируются на js. Если пишешь что то очень ts специфичное, то он нагенерирует такую портянку кода... Вот и выбирай: либо система типов, либо производительность.
     
     
  • 2.32, Аноним (30), 15:03, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Нагенерирует в JS он ровно то что ты написал, 1 в 1, всего лишь вырезав определения типов. В общем, советую получше узнать предмет обсуждения, прежде чем делиться своим экспертным мнением.
     
  • 2.47, Аноним (47), 15:58, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 2.68, Джон Титор (ok), 17:05, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Все по настоящему производительные вещи пишутся и оптимизируются на js. Если пишешь
    > что то очень ts специфичное, то он нагенерирует такую портянку кода...
    > Вот и выбирай: либо система типов, либо производительность.

    А вы с modern JavaScript знакомы вообще?

     
  • 2.73, Илья (??), 17:11, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Все по настоящему производительные вещи пишутся и оптимизируются на js.

    Многопоточка особенно

     
     
  • 3.113, Сладкая булочка (?), 22:13, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Одно ядро, один процесс, один поток, один язык, одна вера.
     

  • 1.33, Аноним (35), 15:03, 24/03/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.37, IMBird (ok), 15:33, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Когда уже нативно в браузерах? Внутри V8 типы ведь и так есть?
    Или лучше сразу на wasm переходить?
     
     
  • 2.42, Аноним (30), 15:40, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем?
     
     
  • 3.55, Аноним (16), 16:29, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Считать в браузере хайлоад нейронки (шучу смысла нет)
     
     
  • 4.71, Джон Титор (ok), 17:09, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.60, Аноним (40), 16:51, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    У браузеров свои типы, у ts - свои.
     
  • 2.69, Джон Титор (ok), 17:08, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Когда уже нативно в браузерах? Внутри V8 типы ведь и так есть?
    > Или лучше сразу на wasm переходить?

    Расскажи мне дорогой, как поисковые системы должны индексировать контент на wasm? Идея то давно не плохая, но что вы на этот счёт предлагаете?

     
     
  • 3.78, _ (??), 17:25, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > как поисковые системы должны индексировать контент на wasm?

    I can't be care LESS!(C)

    Fuck them!(C)
    ;-p

     
     
  • 4.82, Джон Титор (ok), 17:37, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >> как поисковые системы должны индексировать контент на wasm?
    > I can't be care LESS!(C)
    > Fuck them!(C)
    > ;-p

    Ну вот, не знаешь. Вот поэтому и не поступают так. Как только эту проблему элегантно решат, то и JavaScript покатится к закату.

     
  • 3.85, Аноним (84), 18:01, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Никак не должны, все индексаторы и парсеры, включая сбор для ии, поедет лесом и это хорошо
     

  • 1.38, Аноним (40), 15:37, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У JS-а много недостатков: отсутствие нормальной типизации, высокое потребление памяти, какое-то безумие с зависимостяим типа leftpad, проблемы с эргономикой и так далее. TS не решает проблему типизации целиком, так как для интеграции с js позволяет опускать типы, но достаточно хорошо её маскирует. Как следствие того, что проблема с типизацией остаётся замаскированой, у разработчиков нет стимула переходить на какой-то другой язык, который кроме проблемы с типизацией заодно решит и другие проблемы. Отказ от раскрутки компилятора довольно красноречиво говорит о качестве самого языка.
     
     
  • 2.49, Аноним (49), 16:10, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > какое-то безумие с зависимостяим типа leftpad

    У кого-то протекла криокамера?

     
     
  • 3.64, Аноним (40), 16:59, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    После самого leftpad-а проблема не прекратилась.
     
  • 3.75, Илья (??), 17:17, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > У кого-то протекла криокамера?

    Всё так. Проекты на JS собрать невозможно если не сидишь и не обновляешь пакеты раз в месяц. У нас фронтендеры отказали в поддержке дважды, так как старые библиотеки были

     
     
  • 4.115, Аноним (115), 23:26, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Unix-way подход в NodeJS экосистеме был ошибкой. Шутки про пакеты is-odd, is-even и когда наше приложение представляет собой пакет с пакетиками - это совсем не шутки.

    После переезда на Bun кол-во зависимостей в моем проекте сократилось в 2.5 раза. И как пишет сам Bun: "Время, которое вы тратите на поиск библиотек, можно было бы потратить на разработку приложения."

     
  • 2.74, Джон Титор (ok), 17:12, 24/03/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.114, Сладкая булочка (?), 22:19, 24/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > TS не решает проблему типизации целиком, так как для интеграции с js позволяет опускать типы, но достаточно хорошо её маскирует.

    Это называется gradual typing https://en.wikipedia.org/wiki/Gradual_typing

     

  • 1.67, Аноним (67), 17:05, 24/03/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.94, srgazh (ok), 18:49, 24/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    TS Лучшее для WEB
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру