ReferenceError:en_en的定义方式不正确,无法在Javascript中连接字符串

ReferenceError:en_en的定义方式不正确,无法在Javascript中连接字符串,javascript,jquery,string-concatenation,Javascript,Jquery,String Concatenation,我试图用以下代码连接Javascript中的一些字符串: var locale = {{ app.request.locale }}_{{ app.request.locale | upper }} + '.json'; 其中{app.request.locale}}获取en或es或fr或其他内容。我们的想法是在locale中得到这个en_en.json作为结果,但似乎我做错了,因为我在Firebug控制台上得到了这个错误: ReferenceError: en_EN is not defin

我试图用以下代码连接Javascript中的一些字符串:

var locale = {{ app.request.locale }}_{{ app.request.locale | upper }} + '.json';
其中{app.request.locale}}获取en或es或fr或其他内容。我们的想法是在locale中得到这个en_en.json作为结果,但似乎我做错了,因为我在Firebug控制台上得到了这个错误:

ReferenceError: en_EN is not defined
    var locale = en_EN + '.json';

我做错了什么?

我不知道你用什么样的库来替换

{{ app.request.locale }}_{{ app.request.locale | upper }}
它将en_en视为变量,而不是字符串

示例代码运行-未定义变量与字符串的串联


我发现了错误,为了避免Javascript将变量视为var而不是字符串,只需更改以下内容:

var locale = "{{ app.request.locale }}_{{ app.request.locale | upper }}" + ".json";

这不是一个库,这段代码是因为JS在一个细枝模板上,{{app.request.locale}因此给我en,现在哪种方法是解决与非字符串值相关的问题的最佳方法?@ReynierPM我建议在以后的问题中,您提到这是细枝模板的一部分,不会让人猜测。阅读你的问题的人不会知道这一点。@jlris谢谢你的建议,我会照你说的做