Yes, it could be.

I explained why I put out try..catch block there, it's for performance reasons only, see PR description. If a certain string is correct, it would parse faster.

I did some benchmarks, and I got 2000 ms for N iterations of querystring.parse. Compare that to native speed 400 ms of decodeURIComponent. However, if URI is malformed, the entire try..catch block would take up 13000 ms, so it's kinda tradeoff.

I don't mind replacing, and it would simplify things. I just looked at node core and thought they did the right thing, and I don't have a personal opinion here.