JavaScript
Article

jQuery String Template Format Function

By Sam Deering

Pretty useful jQuery function I’ve called “formatVarString”. Its takes a string as the first argument with n arguments after with which to perform variable substitution (returning variables as part of a string using parenthesis).

You can simply use {1}, {2}, {3} etc to reference variables in a string.

Usage

formatVarString('we love {1}.', 'jQuery4u');
//output: "we love jQuery4u."

formatVarString('{1} is a {2} aimed to help you learn {3}.', 'jQuery4u', 'blog', 'jQuery');
//output: "jQuery4u is a blog aimed to help you learn jQuery."

The jQuery Format Function

var JQUERY4U = {};
JQUERY4U.UTIL = {
formatVarString: function()
	{
		var args = [].slice.call(arguments);
		if(this.toString() != '[object Object]')
		{
			args.unshift(this.toString());
		}

		var pattern = new RegExp('{([1-' + args.length + '])}','g');
		return String(args[0]).replace(pattern, function(match, index) { return args[index]; });
	}
}
JQUERY4U.UTIL.formatVarString('{1} is a {2} aimed to help you learn {3}.', 'jQuery4u', 'blog', 'jQuery');
//output: "jQuery4u is a blog aimed to help you learn jQuery."
Recommended
Sponsors
Because We Like You
Free Ebooks!

Grab SitePoint's top 10 web dev and design ebooks, completely free!

Get the latest in JavaScript, once a week, for free.