我对在这里发帖有点陌生,我总是通过搜索找到答案,从来不需要创建自己的帖子,所以如果我做错了什么,请告诉我。
我也不知道如何提出这个问题,所以如果这很奇怪,我很抱歉。
我正在为 chrome 编写一个扩展程序,但我不确定我将国家代码和名称的数组放在哪里。
现在它就在我的 javascript 文件的开头(下面有所有其他代码)。这不是一个真正的问题,但我觉得我可以把它放在别的地方。我应该为它制作一个单独的文件还是应该保持原样?
就是这样:
var countryList = [
["AF", "Afghanistan"],
["AX", "Aland Islands"],
["AL", "Albania"],
["DZ", "Algeria"],
["AS", "American Samoa"],
["AD", "Andorra"],
["AO", "Angola"],
["AI", "Anguilla"],
["AQ", "Antarctica"],
["AG", "Antigua And Barbuda"],
["AR", "Argentina"],
["AM", "Armenia"],
// And then a whole bunch more...
];
我确定我能在某个地方找到答案,但由于我在制定它时遇到问题,我似乎找不到任何相关问题。
最佳答案
最佳做法是将它放在命名空间中或在另一个函数的范围内,以使其远离“Window”对象的全局命名空间,并且不会与其他变量/库发生任何潜在冲突。
这是一个命名空间的例子:
var App = {
countryList: []
};
var arr = App.countryList[0];
这是一个范围界定的例子:
(function() {
var countryList = [];
// do something here
})();
当像上一个例子那样在一个函数内限定范围时,'countryList' 变量将只对周围函数中包含的其他函数/代码可用。顺便说一下,这是一个范围/包含在一个“匿名方法”中,该方法在声明后通过柯里化(Currying)自动执行。
有关 Currying 的更多信息:http://www.dustindiaz.com/javascript-curry/
关于Javascript:我在哪里放置带有标准数据的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28548335/