Страницы

понедельник, 1 мая 2017 г.

TypeScript checkJs

На прошлой неделе была анонсирована версия TypeScript 2.3, в которой появилась возможность выполнять проверку типов "vanilla JS" файлов. Я потрясен! Теперь можно не только линтить, но и тайп-чекить, что в перспективе может позволить создавать еще более надежный код. И для этого совсем не обязательно писать на TypeScript. Достаточно при запуске компилятора использовать следующие опции: --noEmit--allowJs и --checkJs, или как вариант можно добавить поля { noEmit: true, allowJs: true } в tsconfig.json + комментарий // @ts-check в самое начало JavaScript файла.

Вот как это можно использовать с комментариями JSDoc (limited edition):
- app.js:
/**
 * @param {string} str
 */
const log = (str) => console.log(str);
log(1);


А вот так с модулем, в котором есть файл объявлений (я использовал модуль concat из предыдущего поста):
- app.js:
const concat = require('concat');
const str = concat.concat2(1, 2);
console.log(str);


Easy peasy.