在控制台中显示下划线变量

时间:2016-05-12 19:17:29

标签: javascript web underscore.js underscore.js-templating

我设置了一个下划线变量:

<% var myVar = 1 %>

我用以下方式展示了它:

<% console.log(myVar) %>

我可以使用什么直接从网络浏览器控制台显示myVar?

1 个答案:

答案 0 :(得分:0)

简短回答:你不能。

长答案:编译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只存在于该函数的范围内,你无法从函数外部获取它。