저는 매우 기본 템플릿 시스템과 고민 중입니다. 쉽게 것 같은Javascript에서 일치하는 문자열을 변수로 어떻게 실행할 수 있습니까?
some useless text here but i want to replace %% this %% with the variable: object.this
이 보인다,하지만 난 그것을 알아낼 수 없습니다 :
이 가져 가라. 내 코드는 다음과 같습니다.function loadTemplate(element, object) {
var regex = /%% (.*) %%/;
return $(element).html().replace(regex, eval("object.$1"));
}
나는 여러 가지 시도를했습니다. 현재 평가는 undefined
을 반환합니다. eval("$1")
을 시도하면 알려지지 않은 참조 오류가 발생하고 $1
이 정의되지 않았 음을 알 수 있습니다.
내가 뭘 잘못하고 있는지 잘 모릅니다. 도와주세요.
'replace'는 콜백 함수를 사용하므로 'eval'이 필요하지 않습니다. 너의 논리를 거기해라. – elclanrs
@elclanrs, 그냥 변수로 문자열을 실행하려면'eval'을 사용하고 있습니다. – Rob
내 대답보기, 당신은 그것을 필요가 없습니다. 대괄호 표기법을 사용할 수 있습니다. – elclanrs