javascript - catch SyntaxError and run alternate function
        Posted  
        
            by ludicco
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by ludicco
        
        
        
        Published on 2010-03-12T21:51:33Z
        Indexed on 
            2010/03/12
            21:57 UTC
        
        
        Read the original article
        Hit count: 558
        
Hello there,
I'm trying to build something on javascript that I can have an input that can be everything like string, xml, javascript and (non-javascript string without quotes) as follows:
//strings
    eval("'hello I am a string'"); /* note the following proper quote marks */
//xml
    eval(<p>Hello I am a XML doc</p>);
//javascript
    eval("var hello = 2+2;");
So this first 3 are working well since they are simple javascript native formats
but when I try use this inside javascript
//plain-text without quotes
    eval("hello I am a plain text without quotes");
    //--SyntaxError: missing ; before statement:--//
Obviously javascript interprets this as syntax error because it thinks its javascript throwing a SyntaxError.
So what I would like to do it to catch this error and perform the adjustment method if this occurs.
I've already tried with try catch but it doesn't work since it keeps returning the Syntax error as soon as it tries to execute the code.
Any help would be much appreciated
Cheers :)
Additional Information: Imagine an external file that javascript would read, using spidermonkey, so it's a non-browser stuff(I can't use HttpRequest, DOM, etc...)..not sure if this matters, but there it is. :)
© Stack Overflow or respective owner