Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.04.2016, 13:48
Профессор
Отправить личное сообщение для Tecvid Посмотреть профиль Найти все сообщения от Tecvid
 
Регистрация: 13.12.2013
Сообщений: 175

самодельный мини шаблонизатор
добрый день, скажите пожалуйста, есть ли какие-то недостатки такого самодельного мини (или даже микро, ну или нано) шаблонизатора?

function parse(template, data) {
	for (var key in data)
		template = template.replace(new RegExp('{' + key + '}', 'g'), data[key]);

	return template;
};


вроде работает даже для огромных кусков html, но хотел узнать мнение профессионалов, можно ли предпочесть это другим известным и мщным шаблонизаторам?
уточню, что задача только изменять куски {text_to_be_replaced} на соответсвущие значения, больше ничего, никаких вычислений, и даже если понадобитсяя цикл, то буду делать это вне шаблона, как-то так:

var data = 'данные_полученные с сервера',
	len  = data.length - 1;

for ( ; len >= 0; --len)
	parent.appendChild(parse(template, data[len]));


надеюсь ясно выразился
Ответить с цитированием
  #2 (permalink)  
Старый 03.04.2016, 14:04
Аспирант
Посмотреть профиль Найти все сообщения от protoquest
 
Регистрация: 02.04.2016
Сообщений: 50

а зачем вам цикл дополнительно? Вы можете одним реплейсом обойтись.
Сообщение от Tecvid
for ( ; len >= 0; --len)
используйте while, глаза ломает
Сообщение от Tecvid
{' + key + '}
не пойму, почему вы фигурные скобки не экранируете? это так задумано чтоли?
Сообщение от Tecvid
можно ли предпочесть это другим известным и мощным шаблонизаторам?
А Вы думаете почему хомячки пользуются *известными и мощными*? Потому что свой не могут написать. Свой всегда будет гибче и мощней, так как он легко расширяем и изменяем под конкретные нужды
Ответить с цитированием
  #3 (permalink)  
Старый 03.04.2016, 14:11
Профессор
Отправить личное сообщение для Tecvid Посмотреть профиль Найти все сообщения от Tecvid
 
Регистрация: 13.12.2013
Сообщений: 175

Сообщение от protoquest
а зачем вам цикл дополнительно?
это если с сервера пришли допустим несколько комментариев, то их надо перебирать в цикле
Сообщение от protoquest
не пойму, почему вы фигурные скобки не экранируете? это так задумано чтоли?
да, шаблоны будут таким образом выглядеть:
<div class="comment" data-comment-id="{comment_id}">{comment_text}</div>

работает и без экранирования
Сообщение от protoquest
А Вы думаете почему хомячки пользуются *известными и мощными*? Потому что свой не могут написать. Свой всегда будет гибче и мощней, так как он легко расширяем и изменяем под конкретные нужды
ясно, значит спокойно могу и этим пользоваться) благодар за совет
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мини чат редко открывается Kocsten Общие вопросы Javascript 9 20.07.2013 17:26
JS шаблонизатор Andrei jQuery 9 07.11.2011 16:46
Extjs + шаблонизатор + фреймворк Sea ExtJS 1 24.09.2010 15:52
Мини галерея blanzh jQuery 5 20.12.2009 16:57
Скролл мини изображений I-Trap Элементы интерфейса 1 25.11.2009 22:03