matchの戻り値って

以下は3が返って欲しいんだけど1になるんですねぇ。。

"100.0".match(/\d+/).length

そもそもmatchの戻り値って何だろうと思って調べると・・

typeof "100.0".match(/\d+/)

stringではなくobjectらしい。もっというとこれは配列です。つまりさっきの1っていうのは単に配列の要素数が返ってきてたというわけ。今回はマッチした部分は一箇所だけだけど、複数箇所マッチすることもあるもんな。
というわけで一度文字型に変換してやると期待通り3となります。

"100.0".match(/\d+/).toString().length


正しくはこうかな。

"100.0".match(/\d+/)[0].length