在服务器端的属性文件中,我维护一个用逗号分隔的单词列表。
words.for.js=some,comma,separated,words
我想用这些词创建一个JavaScript数组。
var words = [some,comma,separated,words];
我想到了两个选择
1.使用JSP脚本片段,创建一个全局变量
<%
out.print("<script> var words = [");
out.print( PropertyLoader.getAsCommaSeparated("words.for.js") );
out.print(" ] </script>");
%>
2.公开一个服务/动作(即/getWords.do),并使用AJAX调用它并构建数组。
我不确定两者中哪一个更好,请欣赏您在这里的想法。还是有更好的方法来做到这一点?
谢谢。
编辑:
这也是全局JS变量(在选项1的情况下)与其他http请求(在选项2的情况下)的比较-情况更糟。我也想从这个角度了解您的想法。
我更喜欢将服务器端数据嵌入JSP的标记-#1中。它更快,不需要回调。
对我而言,这完全取决于数据的性质。就您而言,如果不重新启动服务器,该属性文件中的数据似乎不太可能更改。因此,保存一个额外的网络回调并将其嵌入到标记中对于全局变量来说是合适的。
如果您要处理某种动态数据,那么ajax回调onload会更好。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句