在控制台中显示下划线变量
Show an underscore variable in console
我设置了一个下划线变量:
<% var myVar = 1 %>
我用以下方式展示了它:
<% console.log(myVar) %>
我可以使用什么直接从 Web 浏览器控制台显示 myVar?
简答:你不能。
长答案:编译 Underscore 模板时,会返回一个函数。模板中的所有内容都在该函数中。例如,如果您这样说:
var t = _.template('<% var v = 11; %>');
然后查看 t.source
(_.template
方便地为您设置),您会看到类似这样的内容:
function(obj) {
// Boilerplate set up stuff...
with(obj||{}) {
__p+='';
var v = 11; // <-------------- There's your <%...%>
__p+='';
}
return __p;
}
所以你的 var myVar
在模板函数内部,而 myVar
只存在于该函数的范围内,你无法从函数外部获取它。
我设置了一个下划线变量:
<% var myVar = 1 %>
我用以下方式展示了它:
<% console.log(myVar) %>
我可以使用什么直接从 Web 浏览器控制台显示 myVar?
简答:你不能。
长答案:编译 Underscore 模板时,会返回一个函数。模板中的所有内容都在该函数中。例如,如果您这样说:
var t = _.template('<% var v = 11; %>');
然后查看 t.source
(_.template
方便地为您设置),您会看到类似这样的内容:
function(obj) {
// Boilerplate set up stuff...
with(obj||{}) {
__p+='';
var v = 11; // <-------------- There's your <%...%>
__p+='';
}
return __p;
}
所以你的 var myVar
在模板函数内部,而 myVar
只存在于该函数的范围内,你无法从函数外部获取它。