如何在不删除 javascript 中的 var 的情况下使对象成为公共对象
How to make the object as public without removing var in javascript
(function(){
var a = {};
a.b = function(){
alert('this is b');
}
}());
如何在不删除"var"的情况下使"a"对象在上面的代码中成为公共对象,这意味着"a"甚至可以从如下所示的另一个文件访问。
(function(){
a.b();
}());
注意:不要说要删除"var",我知道这样。但我想在不删除"var"的情况下以任何其他方式
您可以将其附加到全局范围。 在 Web 浏览器中,这是window
对象。
window.a = {};
稍后,您可以通过 window.a
或仅a
引用它。
通常不鼓励这样做,因为当两个不起眼的脚本运行时并定义相同的内容时,可能会发生冲突。 最好将您需要的任何东西包裹在封盖中。
您可以从 IIFE 返回a
:
var a = (function(){
var a = {};
a.b = function(){
alert('this is b');
}
return a;
}());
或创建一个属性以window
:
(function(){
var a = {};
a.b = function(){
alert('this is b');
}
window.a = a;
}());
相关文章:
- 在不知道深度或父属性的情况下从对象中删除属性
- 如何在不使用 new 关键字的情况下从函数创建对象
- 如何在不知道关键字的情况下访问javascript对象值
- 在不使用循环的情况下,从一个数据库字符串值向javascript数组添加多个对象
- 如何在不删除类似侦听器的情况下从父对象中删除jQuery事件侦听器
- 是否可以在不重新渲染的情况下显示/隐藏父对象中的元素
- 在禁用ng的情况下搜索JSON对象(AngularJS)
- 如何在不安装npm的情况下一次性扩展对象
- 是否可以在不创建svg对象的情况下创建捕捉元素?[snap.svg]
- 是否可以在不序列化的情况下将对象从SilverLight传递到JavaScript
- 在知道对象值的情况下,确定数组中JS对象的索引
- 在不重构Mongo数据库的情况下,更新嵌入数组中的具有给定ID的对象
- 如何避免在这种情况下修改事件对象
- handontable:在不更改数据数组/对象的情况下隐藏某些列
- 是否可以在不加对象名称前缀的情况下调用对象的函数
- 在不使用object.Create的情况下创建具有null原型的javascript对象
- 我可以在不使用XMLHttpRequest或文档对象的情况下使用Javascript来获取网页吗
- 如何在不选择模式配置参数的情况下,使用mongoose在MongoDB模式实例化中的关联数组/对象中执行foreach
- 如何在不破坏shouldComponentUpdate的情况下传递对象/子对象作为道具
- 在不使用jQuery的情况下连接两个JSON对象