TEMPLATE STRINGS

by João Vitor Scheuermann

JavaScript

var data = {
	data1: "facking teste",
  data2: 25
}

var templates = {
	txt_a: "teste {data1}",
  txt_b: "teste {data1}, {data2}",
  txt_c: "lalalal sem template"
}


function fillTemplates (_data, _templates) {
			var $data = _data;
      var $templates = _templates;
      
      var $templatedStrings = new Object();
      
      function replaceTemplate (string, name, data) {
      			var templateName = "{" + name + "}";
            var replacedString = string.replace(templateName, data);
            return replacedString;
      }
      
      for (var templateKey in $templates) {
					var currentString = $templates[templateKey];	            
      		
          for (var dataKey in $data) {
          		currentString = replaceTemplate(currentString, dataKey, $data[dataKey]);      
          }        	
          
          $templatedStrings[templateKey] = currentString;
      }   
      
			return $templatedStrings;
}

var templatedStrings =  fillTemplates(data, templates);

console.log(templatedStrings)