我有一个页面,可以在任何特定时间包含不同的内页。
每个内部页面都需要一个特定的js文件,该文件使用Headjs动态加载。
为了避免(方法和对象名称)的冲突,我想在加载新的js文件之前卸载它。
有谁知道怎么做,或者甚至可能?谢谢!
答案 0 :(得分:0)
没有。从理论上讲,没有什么比“卸载”javascript文件更好的了。一旦它一直装在那里。
但是可能还有其他技巧可以避免“碰撞”,主要是干净的代码。你的案例的一些例子是 1-命名空间的用法 2-避免全局变量 3-定义范围内的所有内容并了解范围 4-使用可理解的描述性变量名称,避免使用名为s,i,j等的变量。除非您已习惯并知道正在做什么。另外要注意,因为在请求页面时会加载javascript文件,因此会导致额外的流量为变量和类使用巨大的大名称。
假设您有相同名称的函数,但它们位于不同的范围/命名空间中 例如:
var myclass;
if (something) myclass = Obj1;
else if (somethingelse) myclass = Obj2;
myclass.func();
所以你去,两个具有相同名称的函数,但是生活在不同的类中。所以你可以在不同的实现之间切换
希望这有帮助