我想将语言变量从我的 html 库中分离出来,但我不确定最好的方法是什么。
目前我得到了这样的东西;
function putAlertA() {
alert('This is alert a');
}
function putAlertB() {
alert('This is alert b');
}
function setAlerts() {
putAlertA();
putAlertB();
}
现在我想将字符串与函数分开:
解决方案 A
function putAlertA() {
var strings = getLanguageVars();
alert(strings[0]);
}
function putAlertB() {
var strings = getLanguageVars();
alert(strings[1]);
}
function setAlerts() {
putAlertA();
putAlertB();
}
function getLanguageVars() {
var strings = new Array();
strings[0] = "This is alert a";
strings[1] = "This is alert b";
return strings;
}
解决方案 B
function putAlertA(strings) {
alert(strings[0]);
}
function putAlertB(strings) {
alert(strings[1]);
}
function setAlerts() {
var strings = getLanguageVars();
putAlertA(strings);
putAlertB(strings);
}
function getLanguageVars() {
var strings = new Array();
strings[0] = "This is alert a";
strings[1] = "This is alert b";
return strings;
}
解决方案 C
function putAlertA() {
var strings = window.strings;
alert(strings[0]);
}
function putAlertB() {
var strings = window.strings;
alert(strings[1]);
}
function setAlerts() {
putAlertA();
putAlertB();
}
window.strings = new Array();
strings[0] = "This is alert a";
strings[1] = "This is alert b";
我认为解决方案 C将是最好的,因为我认为解决方案 A 和 B在内存消耗方面产生了太多开销,而且它看起来不太合乎逻辑,因为语言数组是一个全局变量。不过我在使用时有点犹豫window.
。不确定如何做到这一点是正确的方法。也许有更好的方法来做到这一点?我正在使用 jQuery