什么是重构越来越多的javascript/jquery函数的好方法?

Mar*_*ers 6 javascript jquery refactoring global-variables object

我正在开发一个项目,我们在一个mvc风格的项目上做了很多自定义的javascript,尤其是jquery.

唯一的问题是我不断添加越来越多的全局函数/变量,而且它们正在堆积.我有一些文件,但我不确定如何将一些东西拆分成单独的文件.

我曾考虑将这些函数和全局变量中的一些组合成对象,但javascript中的对象语法对我来说似乎有些尴尬(因为缺少经典类).虽然如果我有一个很好的榜样,也许我可以到处走.

你如何处理全局javascript函数和变量开始堆积的项目?

Tri*_*ych 11

将一堆全局变量和函数堆积到单个全局对象中的一种非常简单的方法:

// Awful pile of globally-scoped names
var foo = 1
var bar = 2
function go = function(){
    console.log('Yeehaw!');
}


// Instead, just dump everything into a global-level object
var MyApp = {
    foo: 1,
    bar: 2,
    go: function(){
        console.log('Yeehaw!');
    }
}  

// Now access stuff like this
console.log(MyApp.foo);
console.log(MyApp.bar);
MyApp.go();
Run Code Online (Sandbox Code Playgroud)

对于"简单"的顶级变量和函数,我可以推荐这个.可以对此做出很多改进,但它们可能属于过早优化的范畴; 这是很好的第一步.