diff --git a/lib/parse.js b/lib/parse.js index 317bc6b2..fae28d69 100755 --- a/lib/parse.js +++ b/lib/parse.js @@ -33,7 +33,7 @@ var parseValues = function parseQueryStringValues(str, options) { val = options.decoder(part.slice(pos + 1)); } if (has.call(obj, key)) { - obj[key] = [].concat(obj[key]).concat(val); + obj[key] = utils.combine(obj[key], val); } else { obj[key] = val; } diff --git a/lib/utils.js b/lib/utils.js index 0d410c6a..956c229b 100755 --- a/lib/utils.js +++ b/lib/utils.js @@ -178,3 +178,7 @@ exports.isBuffer = function (obj) { return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj)); }; + +exports.combine = function (a, b) { + return [].concat(a).concat(b); +};