请问这样写js有什么好处啊?

/**
 * B account || child list  
 * @package package
 * @version $Id$
 *
 */
(function($view) {

    var _this = $(this);

    /* ==================================  Configs  ================================== */

    var options = {
       disable:{
          submitUrl:'/account/children/disable',
       },
    };

    /* ================================== Triggers ================================== */

    $view
        .on("click", "#disable" , is_disable)

    /* ==================================  Utils  ================================== */

    /* ================================== Functions ================================== */

    // [IS_DISABLE PART] ----------------------------------------------------

  
    /**
     * [disable 子账号禁用]
     * 
     * @DateTime 2016-11-09T14:48:02+0800
     * @return   {[type]}                 [description]
     */
    function is_disable(){
     var para   = {
                'child_id': $(this).attr('child-id'),
            };
    
     var status, _data, _msg;
        $.request("post", options.disable.submitUrl,para)
            .done(function(data) {
                status = data.code;
                 _data = data.data;
                 _msg  = data.message;
            }).fail(function() {
               // 错误回调  
            });

        switch (status) {
        case 10000: // 成功
           $.redirect(_data);
            break;
        case 20002: 
            alert('未传入角色id');
            break;
        case 90000:
            alert('添加失败');
            break;
        default:
            alert('出错了');
      }
    }

})($(document.body));
// 页面中全局定制部分

js直接写在这种格式的文件类,不清楚有什么好处和

回复
阅读 2k
2 个回答

首先,使用了一个闭包,将内部变量与全局对象隔离开,不会造成全局污染,其次,模块化代码,可以降低代码间的耦合度,同时增强了代码的逻辑性

推荐问题
宣传栏