amd|cmd|commonjs, js module

commonjs
--sync load module for server e.g. nodejs|couchdb|mongodb

// define module
// math.js
module.exports = {
  add: function(x, y) {
    return x+y;
  }
};

// use module
var math = require('./math');
math.add(1, 2);

amd
--async load module for browser e.g. requirejs

// define module
// math.js
define(function() {
  return {
    add: function(x, y) {
      return x + y;
    }
  };
});

// use module
require(['math'], function(math) {
  math.add(1, 2);
});

cmd
--async load module as lazy as possible for browser e.g. seajs

// define module
define(function(require, exports, module) {
  exports.add = function(x, y) {
    return x + y;
  } 
});

// use module
define(function(require, exports) {
  var math = require('./math');
  math.add(1, 2);
});

你可能感兴趣的:(amd|cmd|commonjs, js module)