2022-04-03 13:23:49
Именно поэтому Microsoft решил зайти с другого фланга!
Помните, как до появления TypeScript`а мы использовали JSdoc-комментарии для того, чтобы хоть как-то типизировать JS?
/**
* @param {string} p1 - A string param.
* @param {string} p2 - An optional param (Closure syntax)
* @param {string} [p3] - Another optional param (JSDoc syntax).
* @return {string} This is the result
*/
function stringsStringStrings(p1, p2, p3) {
// TODO
}
Нечто подобное хотят сделать с типами TS.
JavaScript будет воспринимать их как обычные комментарии в коде. Такие изменения относительно легко внедрить в JS (как быть с поддержкой старых версий непонятно).
Таким образом, этап компиляции кода будет пропущен. А TypeSciprt Compiler будет играть роль ESLint`а, осуществляя Type-checking.
Внимательный читатель скажет: «эмм, в TS же кроме типов есть еще множество фичей! Их же не закомментируешь!»
И будет прав, поэтому если вам нужны будут условные декораторы, то этапа компиляции все равно не избежать.
До того момента, пока декотораторы и другие фичи не будут реализованы в JavaScript.
Proposal находится на стадии Stage 0, но ажиотаж вокруг предложения громадный. Поэтому будем следить за его дальнейшей судьбой!
1.4K views10:23