通过移除空行和注释来压缩 JavaScript 代码
/*** Este arquivo faz parte da estrutura de aplicativos da Web Echo (a seguir /"echo /"). * Copyright (c) 2002-2009 NextApp, Inc. * * Compressa uma string contendo JavaScript removendo comentários e espaço em branco. */Classe pública JavaScriptCompressor {private estático final char line_feed =/'// n/'; private estático final carrinho de carruagem_return =/'// r/'; espaço final estático privado =/'/'; private estático de char de char =/'// t/'; ** * ** * compressa uma string contendo javroScript por que continua por que * * @param script A sequência para compactar * @return Uma versão compactada */public static string compact (string script) {javascriptCompressor jsc = new javascriptCompressor (script); return jsc.outputBuffer.toString ();}/** javascript text original. */script de sequência privada;/*** Buffer de saída compactado. * Este buffer só pode ser modificado invocando o método <code> append () </code> *. */Private StringBuffer outputBuffer;/** Posição do cursor do analisador atual no texto original. */private int pos;/** caractere na posição do cursor do analisador. */Private char ch;/** Último caractere anexado ao buffer. */private char lastappend;/** sinalizador indicando se o fim do buffer foi alcançado. */Private Boolean acabou;/** sinalizador indicando se o conteúdo foi anexado após o último identificador. */Private Boolean ContentAppendedAnTIdIdentifier = true;/*** Cria uma nova instância <Code> javaScriptCompressor </code>. * * @param script * /private javaScriptCompressor (string script) {this.script = script; outputBuffer = new StringBuffer (script.length ()); nextChar (); while (! EndReached) {if (caractere.isjavaIdiFierStart (ch)) /{{RenderIdentifier; {skipwhitespace ();} else if (iswhitespace ()) {// compacte whitaSpaceskipwhitespace ();} else if ((ch ==/'/"/') || (ch ==/'///'/') {// Handle Strings renderstring ();; == // Void Append (char) {LastAppend = CH; } / ** * Carregue o próximo caractere. (! Char Append (CH); Carriejamento) (CH! '//') {NextChar (); * Movimentos do Space Branco (incluindo linhas de recarga). Line_feed ||.总结
以上就是本文关于通过 Java 压缩 JavaScript 代码实例分享的全部内容 , 希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题 , 如有不足之处 , 欢迎留言指出。感谢朋友们对本站的支持!