我在这里查看Addy Osmani的要旨,以进行发布/订阅:
https://github.com/addyosmani/pubsubz/blob/master/pubsubz.js
他像这样将自己的对象作为全局对象浮出水面:
;(function ( window, doc, undef ) {
var topics = {},
subUid = -1,
pubsubz ={};
....
getPubSubz = function(){
return pubsubz;
};
window.pubsubz = getPubSubz();
创建该
getPubSubz
函数的值(value)是什么?简单地写一下会不会更简单:window.pubsubz = pubsubz;
最佳答案
是的,在这种情况下,因为getPubSubz
仅在一个地方调用,所以在声明后立即可以内联它。
很难确切地说出作者的想法,但是在不断增长的代码库中,拥有“getter”功能可能会有一些值(value),如果获取pubsubz
对象的行为需要更高级的逻辑,则可以对其进行修改。
关于javascript - 从函数的返回值创建全局变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24810788/