JavaScript增强了原型生命周期

Dón*_*nal 3 javascript prototype

如果我想为所有JavaScript数组添加一个isEmpty方法,我会使用以下代码

Array.prototype.isEmpty = function() {
  return this.length == 0;
}
Run Code Online (Sandbox Code Playgroud)

假设此代码位于文件foo.js中.如果我希望isEmpty可以在网站的所有页面上使用,我是否需要在所有HTML文件中包含foo.js?换句话说,只要用户导航到不同的页面,原型就会"重置"吗?

谢谢,唐

Ala*_*orm 5

是的,您需要在每个页面加载时包含您的代码.

将每个页面加载视为编译/链接循环.页面上的Javascript的所有各个位被连接在一起1,然后作为一个巨大的程序执行.下次加载页面时,默认的Javascript对象将以新的状态启动.


1.在一个脑死亡的"每一段代码共享相同的全局命名空间"时尚中联系在一起