String.prototype.replaceAt=function(i, replacement_ch_s) {
return this.substr(0, i) + replacement_ch_s + this.substr(i + replacement_ch_s.length);
}
function char_to_uppercase(s, idx) {
var len = s.length;
if (idx < 0 || idx > len) return s;
for (var i = 0; i < len; i++) {
if (i === idx && s[i] >= 'a' && s[i] <= 'z') {
s = s.replaceAt(i, s.charAt(i).toUpperCase());
}
}
return s;
}
var s = "javascript programming";
s = char_to_uppercase(s, 0);
document.write(s + "<br />");
s = char_to_uppercase(s, 4);
document.write(s + "<br />");
s = char_to_uppercase(s, s.length - 1);
document.write(s + "<br />");
/*
run:
Javascript programming
JavaScript programming
JavaScript programminG
*/