strtoupper no existe, existe el método para un string
.toUpperCase(), pero tenemos el problema que afecta a todo el string, y no sólo a la palabra.
Podemos separar cada palabra con un
split() y arrancar la primera letra, convertirla a mayúsculas y devolverla a la palabra original o podemos trabajar con expresiones regulares, más complicado pero más eficiente:
Código:
// captura una letra que esté después de un espacio o del inicio de la cadena
var re=/(^| )([\wáéíóúñ])/gi;
// función que captura lo que capture la expresión regular, lo modifica y lo devuelve
function sustituidora($1,$2) { return $1.toUpperCase(); }
var str="esto es lo que a mayúsculas Las primeras letras ñandu murciélago fa85 ácaro año fin".replace(re, sustituidora );
document.write(str);
Dime qué te parece.
Saludos.