Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: Compressing/Obfuscating Javascript file

by VSarkiss (Monsignor)
on Oct 06, 2001 at 05:11 UTC ( #117151=note: print w/replies, xml ) Need Help??


in reply to Compressing/Obfuscating a Javascript file

I really doubt you could find a single regex to do what you want, simply because JS is too complicated a language to parse with a single regex. You could probably do it if you imposed severe restrictions on your coders (no comments on the first line, never put opening curly brace on a line by itself, that kind of thing), in which case you'd also have to do that to every script you get from somewhere else.

My advice would be to construct a parser. You can find a bnf-like grammar for JS 1.4 at mozilla.org. I couldn't spot a JS 2.0 grammar, though that doesn't mean it's not there. ;-) There are also tools to construct parsers in Perl on CPAN, like Parse::YAPP and Parse::RecDescent. It shouldn't be too hard to glue the two together -- probably easier than trying to maintain strict control over 400K of code.

HTH

  • Comment on Re: Compressing/Obfuscating Javascript file

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://117151]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (7)
As of 2020-04-08 16:40 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    The most amusing oxymoron is:
















    Results (45 votes). Check out past polls.

    Notices?