menú
¿Música de YouTube sin molestos comerciales? ¡Ahora es posible!
TubeFiesta es una aplicación que te permite reproducir música de YouTube como un reproductor tradicional.
Crear listas, reproducción aleatoria, repetir, y hasta exportar el video a otra pantalla.
Conocer más Ir a tfiesta.com

String.Format en JavaScript

Publicado el 09/10/2013 | 986 visitas

En los lenguajes C# y VB.NET encontramos una ingeniosa función que nos permite "armar" una cadena como plantilla (un string con marcadores de posición o indices específicos) y a esa cadena enviarle unos parámetros que reemplazan cada una de los marcadores de posición.

Ejemplo de String.Format en C#

string nombre = "edwin";
string saludo = string.Format("Hola {0}. Bienvenido", nombre);

Al imprimir la variable saludo obtenemos:

Hola edwin. Bienvenido

JavaScript no tiene el método string.Format u otra función para realizar la misma tarea, pero podemos crear una que nos permita hacerlo casi de la misma manera.

Ejemplo para hacer String.Format en JavaScript

<script type="text/javascript">
    // Esta es la función.
    String.prototype.format = function (args) {
        var str = this;
	return str.replace(String.prototype.format.regex, function(item) {
	    var intVal = parseInt(item.substring(1, item.length - 1));
	    var replace;
	    if (intVal >= 0) {
	        replace = args[intVal];
	    } else if (intVal === -1) {
	        replace = "{";
	    } else if (intVal === -2) {
	        replace = "}";
	    } else {
	        replace = "";
	    }
	    return replace;
	});
    };
    String.prototype.format.regex = new RegExp("{-?[0-9]+}", "g");
</script>

Y lo usas de la siguiente manera

var str = "Hola {0}. Bienvenido";
str = str.format(["edwin"]);
alert(str);

Debes poner la etiqueta Script antes de usar el String.Format
Si te gustó o sirvió, comparte.

Talvez te interese...

[Truco] Contar caracteres en Google Chrome
Tutorial de sockets en c# con ejemplos - Parte 2 - UDP
Tutorial de sockets en c# con ejemplos - Parte 1
[solución] No puede obtener acceso a la página solicitada debido a la configuración de la extensión
blog comments powered by Disqus