テキストと数値の両方を含むクエリ文字列を解析する必要があります。たとえば、次のクエリ文字列:
?userID=12&team=Sales&quarter=Q1&count=2310
次のJavaScriptオブジェクトに変換する必要があります。
{
userID:12, // not "12"
team:"Sales",
quarter:"Q1",
count:2310 // not "2310"
}
現在、私は2つのステップでそれを行っています。
- クエリ文字列を解析します
- すべてのパラメーターを調べて、どのパラメーターが数値であるかを特定します(正規表現またはisNumber関数のいずれかを使用)
!isNaN(parseFloat(n)) && isFinite(n)
特に私のパラメータのほとんどが数値ではないため、これはかなり非効率的なようです。もっと良い方法はありますか?