最近在学node.js,之前由于实验室项目需要,用C#写了个JS代码压缩合并的小插件,想想正好可以用node重构,来练练手。本人node新手,大神止步O(∩_∩)O上代码:/*符合CommonJs规范*/var writePath = min.j ...
最近在学node.js,之前由于实验室项目需要,用C#写了个JS代码压缩合并的小插件,想想正好可以用node重构,来练练手。本人node新手,大神止步O(∩_∩)O
上代码:
/*符合CommonJs规范*/var writePath = 'min.js',/*默认输出到本目录min.js文件里*/ fs = require('fs'), r1 = /^(.+)$/mg,/*分行*/ r2 = /\s{2,}/g,/*去空格*/ r3 = /([^\\])\/\/.*/g,/*去行注释*/ r4 = /\/\*.*?\*\//g,/*去块注释*/ str = '';module.exports.run = function(input){ input.forEach(function(item){ /*合并对顺序有需求,所以同步读取文件*/ var data = fs.readFileSync(item, 'utf8'), lines = data.match(r1);/*行数组*/ /*拼成一串*/ lines.forEach(function(item){ item = item.replace(r3, function($1, $2){return $2;}); str = str + item; }); }); str = str.replace(r2,' ').replace(r4, ''); /*异步写入到目标文件*/ fs.appendFile(writePath, str, {encoding: 'utf8'}, function(err){ if(err) {throw err}; console.log('complete........'); });};
原标题:使用node.js,实现简单的JS合并小工具
关键词:JS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。