兼容amd,commonjs和browser的模块写法
2015-10-30 18:25
966 查看
从uuid.js中抽出来的写法。
(function() {
var _global = this;
// Export public API
var obj = {};
obj.attr = function(params){
};
if (typeof define === 'function' && define.amd) {
// Publish as AMD module
define(function() {return obj;});
}
else if (typeof(module) != 'undefined' && module.exports) {
// Publish as commonjs module
module.exports = obj;
}
else {
// Publish as global (in browsers)
var _previousRoot = _global.obj;
// **`noConflict()` - (browser only) to reset global 'obj' var**
obj.noConflict = function() {
_global.obj = _previousRoot;
return obj;
};
_global.obj = obj;
}
}).call(this);
(function() {
var _global = this;
// Export public API
var obj = {};
obj.attr = function(params){
};
if (typeof define === 'function' && define.amd) {
// Publish as AMD module
define(function() {return obj;});
}
else if (typeof(module) != 'undefined' && module.exports) {
// Publish as commonjs module
module.exports = obj;
}
else {
// Publish as global (in browsers)
var _previousRoot = _global.obj;
// **`noConflict()` - (browser only) to reset global 'obj' var**
obj.noConflict = function() {
_global.obj = _previousRoot;
return obj;
};
_global.obj = obj;
}
}).call(this);
相关文章推荐
- JSON详解
- 日历
- 将Record 数组转成jsonstring
- 浅析Javascript原型继承
- JavaScript选项卡
- javaScript正则表达式1
- Angular.js笔记
- JavaScript中的循环类型(整理笔记)
- 《JavaScript高级编程》读书笔记——函数
- 关于文件上传服务器开发
- 备份一个省市区JSON数据
- 《JavaScript高级编程》读书笔记——数据类型
- javascript性能优化
- js 从字符串中选取数字并相加
- JavaScript原型及原型链详解
- js 随机打乱数组
- js 如何将某个属性设置成隐藏的
- js小案例效果学习记录--倒计时
- jsp页面跳转和请求的各种方法
- 常用辅助类——JSON,XML,模型互转,MD5,Base64