技術とかの雑なToday I Learnedメモ

文字列をlengthで数えるのはやめようの記事

JavaScript で文字列を length で数えるのはやめようの記事

JavaScript で文字数を length で数えるのはやめようの実例

かなり前にlengthでの文字数の計算がよくないみたいのはどっかで見た記憶がある(JavaScript じゃなかったかもしれない)

これが原因で Prettier にバグがあるというのは面白かった。

Prettier でのメソッドチェーンの改行の条件を初めて知ったが、たしかに「いずれかの引数が正規表現でかつ 5 文字以上」というのは普通に起こりうる条件だし、その条件にこういったlengthの判定が使われていればおかしくなるのも頷ける。

で、これどうするんだろうと思ってたけど、Prettier 内の別の場所で getStringWidth`という関数が使われており、それを使うようにすれば問題なく、しかも次のバージョンに修正が含まれているとのことらしい。なるほど。

普段lengthを使った判定をしている場合、対象の文字列の長さが「0 かどうか」くらいしか使っていないので、こういったバグを踏んだことはないけど覚えておこう。