(function (root, factory) {if (typeof define === 'function' && define.amd) {// AMDdefine(['jquery'], factory);} else if (typeof exports === 'object') {// Node, CommonJS之类的module.exports = factory(require('jquery'));} else {// 浏览器全局变量(root 即 window)root.returnExports = factory(root.jQuery);}}(this, function ($) {// 方法function myFunc(){};// 暴露公共方法return myFunc;}));
更多依赖的情况
(function (root, factory) {if (typeof define === 'function' && define.amd) {// AMDdefine(['jquery', 'underscore'], factory);} else if (typeof exports === 'object') {// Node, CommonJS之类的module.exports = factory(require('jquery'), require('underscore'));} else {// 浏览器全局变量(root 即 window)root.returnExports = factory(root.jQuery, root._);}}(this, function ($, _) {// 方法function a(){}; // 私有方法,因为它没被返回 (见下面)function b(){}; // 公共方法,因为被返回了function c(){}; // 公共方法,因为被返回了// 暴露公共方法return {b: b,c: c}}));
