Javascript 在控制台中显示下划线变量
我将下划线变量设置为:Javascript 在控制台中显示下划线变量,javascript,web,underscore.js,underscore.js-templating,Javascript,Web,Underscore.js,Underscore.js Templating,我将下划线变量设置为: <% var myVar = 1 %> 我用以下方法展示了它: <% console.log(myVar) %> 我可以使用什么直接从web浏览器控制台显示myVar?简短回答:您不能 长答案:编译下划线模板时,会返回一个函数。模板中的所有内容都在该函数中。例如,如果您这样说: var t = _.template('<% var v = 11; %>'); 因此,您的var myVar位于模板函数内部,myVar仅存在于
<% var myVar = 1 %>
我用以下方法展示了它:
<% console.log(myVar) %>
我可以使用什么直接从web浏览器控制台显示myVar?简短回答:您不能 长答案:编译下划线模板时,会返回一个函数。模板中的所有内容都在该函数中。例如,如果您这样说:
var t = _.template('<% var v = 11; %>');
因此,您的
var myVar
位于模板函数内部,myVar
仅存在于该函数的范围内,您无法从函数外部获取它。直接显示它是什么意思?另外,对于记录,您在代码中没有使用任何与下划线相关的内容,因此它只是javascript;)当您说“我使用console.log(myVar)
”时,这不是您想要的吗?如果您想在浏览器控制台中与它交互,如果该变量是全局定义的,您应该可以访问它。这些闭包是什么意思?@Pabs123:在我看来像下划线模板中的东西。您不能.template
将模板文本转换为函数,这样您将拥有类似于function(){var myVar=1;…}
的内容,并且只能从函数内部访问myVar
。
function(obj) {
// Boilerplate set up stuff...
with(obj||{}) {
__p+='';
var v = 11; // <-------------- There's your <%...%>
__p+='';
}
return __p;
}