Foros del Web » Programando para Internet » Javascript »

¿replace no puede llevar una función nativa?

Estas en el tema de ¿replace no puede llevar una función nativa? en el foro de Javascript en Foros del Web. Me ha surgido la curiosidad. Intento poner en mayúsculas la primera letra de cada palabra con un replace: Código: var original="hello how are you"; var ...
  #1 (permalink)  
Antiguo 16/04/2007, 16:06
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
¿replace no puede llevar una función nativa?

Me ha surgido la curiosidad. Intento poner en mayúsculas la primera letra de cada palabra con un replace:

Código:
var original="hello how are you";
var resultado="Hello How Are You";
var prueba1 = original.replace(/\b([a-z])/g, "$1".toUpperCase() );
var prueba2 = original.replace(/\b([a-z])/g, function($1) {
	return $1.toUpperCase();
} );

if( resultado === prueba1 ) document.write("Éxito al hacerlo directamente: "+prueba1+"<br/>");
else	document.write("Error haciéndolo directamente: "+prueba1+"<br/>");
if( resultado === prueba2 ) document.write("Éxito al hacerlo con una function auxiliar: "+prueba2+"<br/>");
else	document.write("Error haciéndolo con function auxiliar: "+prueba2+"<br/>");
El resultado de esto (FF2) es:
Cita:
Error haciéndolo directamente: hello how are you
Éxito al hacerlo con una function auxiliar: Hello How Are You
No me lo explico, y tampoco he encontrado razones por la red. ¿replace no puede llevar directamente una función nativa como toUpperCase? ¿O es que no puede con los métodos?
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:12.