Code
1 varFS = require (' FS ');2 varJSP = require ("./uglifyjs-master/uglify-js"). Parser;3 varPro = require ("./uglifyjs-master/uglify-js"). uglify;4 varFinalcode= ";5 functionJsminifier (Fliein) {6 varFliein=array.isarray (Fliein)?Fliein: [Fliein];7 varOrigcode,ast;8 9 varGetallfiles =function(dir) {Ten varFilesarr =Fs.readdirsync (dir); One for(varj = 0; J < Filesarr.length; J + +) { A varIsdir = Fs.lstatsync (dir+ '/' +filesarr[j]); - if(Isdir.isdirectory ()) { -Getallfiles (dir+ '/' +filesarr[j]); the}Else { -ReadFile (dir+ '/' +filesarr[j]); - } - } + } - functionreadFile (filename) { +Origcode = fs.readfilesync (filename, ' UTF8 ')); AAST =Jsp.parse (origcode); atAST =Pro.ast_mangle (AST); -ast=Pro.ast_squeeze (AST); -Finalcode + = '; ' +Pro.gen_code (AST); - } - for(vari=0; i<fliein.length; i++) { - varIsdir =Fs.lstatsync (Fliein[i]); in if(Isdir.isdirectory ()) { - //for the directory, get all the files under the directory. to getallfiles (Fliein[i]); +}Else { - ReadFile (Fliein[i]); the } * } $ }Panax NotoginsengJsminifier (process.argv[2]); -Fs.writefilesync (Process.argv[3], finalcode, ' UTF8 ');
Run:
node Jsminifier/data/samba/iyy_dev/index/assets/models/wirelesswebim need.js
Use node's plugin uglifyjs to merge and compress files