====== RemoveComment ====== function removeComment(source) { var src = source.split('\n'); var out = []; var p1 = /\/\*/; // block comment start var p2 = /\/\*(.)*\*\//g; // block comment var p3 = /\/\/(.)*$/; // inline comment var isBlock = false; var str; for (var i = 0; i < src.length; i++) { str = src[i]; if (isBlock) { if (str.indexOf('*/') >= 0) { str = str.substring(str.indexOf('*/') + 2); isBlock = false; } else { str = ''; } } if (!isBlock) { str = str.replace(p2, ''); str = str.replace(p3, ''); if (p1.test(str)) { isBlock = true; str = str.substring(0, str.indexOf('/*')); } console.log(i, str); } out.push(str); } return out.join('\n'); }