很多js插件源码都有如下代码://兼容CommonJs规范if (typeof module !== 'undefined' && module.exports) module.exports = MyPlugin;//兼容AMD/CMD规范if (typeof define === 'function') define(function() { return MyPlugin; });这两段代码具体作用是什么呢?对于提高原生插件的编写能力有没有相关方面的书籍可以看呢?
2 回答
BIG阳
TA贡献1859条经验 获得超6个赞
都是模块化方案。
amd 对应 requireJs
cmd 对应 seaJs
commonJs 对应 nodeJs
之所以都想兼容过去,是因为很多js文件可以兼容运行在浏览器和node环境,为了重复利用,加上你列出的通用代码,是最合适不过的,比如一个字符串处理trim,那么就可以在node和browser同时使用。不加模块化代码的话,就可能得写3份重复的js了。
添加回答
举报
0/150
提交
取消
