≪ Today I learned.
RSS購読
    公開日
    更新日
    タグ
    TypeScript
    著者
    ダーシノ

    TypeScript 5.5がリリースされた

    TypeScript 5.5 betaがリリースされた。

    推論される型の改善

    Array#filter()で除外したはずの型が残るせいで不要なキャストが必要だったのが改善された。

    Before

    type Item = string | undefined
    const items: Item[] = []
    
    const filtered = items.filter(a => a !== undefined)
    //    ^? filtered = (string | undefined)[]  // undefinedが除外されていない
    filtered.map(a => a.includes('xxx'))
                     ^^^ 'a' is possibly 'undefined'  // !!!!!

    After

    const filterd = items.filter(a => a !== undefined)
    //    ^? filtered = string[]
    filtered.map(a => a.includes('xxx'))  // エラーにならない

    正規表現の構文チェック

    いままでもちょっとはチェックしてくれていたけど、基本的なチェックは全部やってくれるようになった。

    let myRegex = /@robot(\s+(please|immediately)))? do some task/;
    // Unexpected ')'. Did you mean to escape it with backslash?

    追記:2024-06-28

    TypeScript 5.5が正式リリースされた。