作者:LAMP小白 点击:2105 发布日期:2013-01-05 00:05:00 返回列表
命名空间(namespace)有助于减少程序中所需要的全局变量的数量,并且同时还有助于避免命名冲突或过长的名字前缀
mio_lt;scriptmio_gt; var MYAPP = {}; MYAPP.some_var = 1; MYAPP.child = function () {}; MYAPP.parent = function () {}; mio_lt;/scriptmio_gt;
通过命名空间函数
mio_lt;scriptmio_gt; //不安全的代码 var APP = {}; //更好的代码风格 if (typeof APP === "undefined") { var APP = {}; } //或者 var APP = APP || {}; mio_lt;/scriptmio_gt;
接下来是一个命名空间的函数的实现实例,这个实现是非破坏性的,也就是说,如果已经存在一个命名空间,便不会再重新创建他
mio_lt;scriptmio_gt; var APP = APP || {}; APP.namespace = function (str) { var parts = str.split("."), parent = APP, i, count; if (parts[0] === "APP") { parts = parts.slice(1); } count = parts.length; for(i = 0; i mio_lt; count; i++) { if (typeof parent[parts[i]] === "undefined") { parent[parts[i]] = {}; } parent = parent[parts[i]]; } return parent; } mio_lt;/scriptmio_gt;
上一篇:16进制加密URL 下一篇:快递查询API