相关疑难解决方法(0)

JavaScript中代码组织的常见最佳实践

随着像jQuery这样的JavaScript框架使客户端Web应用程序更丰富,更实用,我开始注意到一个问题......

你是如何保持这种组织的?

  • 将所有处理程序放在一个位置并为所有事件编写函数?
  • 创建函数/类来包装所有功能?
  • 写得像疯了似的,只希望它能做到最好?
  • 放弃并获得新的职业?

我提到了jQuery,但它实际上是任何JavaScript代码.我发现随着线条开始堆积起来,管理脚本文件或找到你要找的东西变得更加困难.我发现最大的问题可能是有很多方法可以做同样的事情,很难知道哪一个是目前普遍接受的最佳实践.

是否有关于保持.js文件与应用程序其余部分一样美观和整洁的最佳方法的一般建议?或者这仅仅是IDE的问题?那里有更好的选择吗?


编辑

这个问题旨在更多地关注代码组织而不是文件组织.有一些非常好的合并文件或分割内容的例子.

我的问题是:目前普遍接受的组织实际代码的最佳实践方法是什么?您的方式是什么,甚至是推荐的方式与页面元素交互并创建可互相冲突的可重用代码?

有些人列出了名称空间,这是一个好主意.还有什么其他方法,更具体地说是处理页面上的元素并保持代码整洁有序?

javascript architecture formatting jquery design-patterns

561
推荐指数
17
解决办法
5万
查看次数

什么(function($){})(jQuery); 意思?

我刚刚开始编写jQuery插件.我写了三个小插件,但我只是简单地将行复制到我的所有插件中而实际上并不知道它意味着什么.有人能告诉我更多关于这些的事吗?也许有一天解释会在编写框架时派上用场:)

这是做什么的?(我知道它以某种方式扩展了jQuery,但还有其他有趣的事情要知道)

(function($) {

})(jQuery);
Run Code Online (Sandbox Code Playgroud)

以下两种编写插件的方法有什么区别:

类型1:

(function($) {
    $.fn.jPluginName = {

        },

        $.fn.jPluginName.defaults = {

        }
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

类型2:

(function($) {
    $.jPluginName = {

        }
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

类型3:

(function($){

    //Attach this new method to jQuery
    $.fn.extend({ 

        var defaults = {  
        }  

        var options =  $.extend(defaults, options);  

        //This is where you write your plugin's name
        pluginname: function() {

            //Iterate over the current set of matched elements
            return this.each(function() {

                //code to be inserted here

            });
        }
    }); 
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

我可能会离开这里,也许意味着同样的事情.我很迷惑.在某些情况下,似乎不适用于我使用Type 1编写的插件.到目前为止,Type …

javascript jquery

289
推荐指数
6
解决办法
22万
查看次数

jQuery的函数($)(jQuery)语法

可能重复:
jQuery:什么(function($){})(jQuery); 意思?

我偶然发现了下面的代码(包含在一个文件中),但我无法理解它的真正含义.

(function ($) {
    function doSomething1(somedata) {

    }

    function doSomething1(somedata) {

    }
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

问题1:这种语法在jQuery的上下文中意味着什么

问题2:如何从其他文件(如HTML索引文件和其他JavaScript文件)中调用这些函数?

谢谢

javascript api jquery

10
推荐指数
1
解决办法
1万
查看次数