Вы создаете массив, но не используете его как массив.Вы используете его как объект, который работает как массив, который также является объектом, но это означает, что длина массива остается нулевой, поскольку вы не добавляете элементы массива.
Создайте объект и посчитайтепредметы, которые вы добавляете для подсчета:
function parseParams(paramUnparsed){
var params = {}, cnt = 0;
for (var j = 0; j < paramUnparsed.length; j++) {
if (paramUnparsed[j].split('=').length < 2) {
// error ! bad input structure, ignoring params -
params = undefined;
break; // we don't have to return error, depending
// on the function called and given params.
}
var key = paramUnparsed[j].split('=')[0];
var value = paramUnparsed[j].split('=')[1];
params[key] = value;
cnt++;
}
console.log("In parseParams, params are: "+ concatObject(params));//DEBUG 1
console.log("In parseParams, params length is: "+ cnt);//DEBUG 2
return params;
}