myArray[items].toUpperCase is not a function
This question already has an answer here:
I'm not sure this will guarantee the order of the elements in the array. The best solution would be to go with a for loop (both for performance and order):
for (var i=0, len=myArray.length; i<len; i++){
msgupdate += myArray[i].toUpperCase()+' ';
}
Use
msgupdate = myArray.map(function (i) { return i.toUpperCase() }).join(' ');
Using for/in
isn't a good idea, without a hasOwnProperty
check.