Eval () and catch () in JS

Source: Internet
Author: User

Definition and usage

The eval () function computes a string and executes the JavaScript code in it.

Grammar
Eval (String)
Parameters Description
String Necessary. The string to evaluate that contains the JAVASCRIPT expression to be evaluated or the statement to execute.
return value

The value (if any) that is obtained by calculating the string.

Description

The method only accepts the original string as an argument, and if the string parameter is not the original string, the method returns without any change. Therefore, do not pass a String object as a parameter for the eval () function.

If you attempt to override the Eval property or assign the eval () method to another property and call it through the property, the ECMAScript implementation allows a Evalerror exception to be thrown.

Thrown

Throws an SyntaxError exception if there are no valid expressions and statements in the argument.

If Eval () is called illegally, a Evalerror exception is thrown.

If the Javascript code passed to eval () generates an exception, eval () passes the exception to the caller.

Hints and Notes

Tip: Although the function of eval () is very powerful, there are not many cases where it is used in practice.

Example 1

In this example, we will use Eval () on a few strings and see the results returned:

<script type= "Text/javascript" >eval ("X=10;y=20;document.write (x*y)") document.write (eval ("+ +)") var x= 10document.write (eval (x+17)) </script>

Output:

200427
Example 2

Take a look at the result of the Eval () return in other cases:

Eval ("2+3")//return 5var Myeval = eval;//may throw Evalerror exception Myeval ("2+3");//May throw Evalerror exception

The following code can be used to detect whether the parameters of eval () are legitimate:

Try  {     alert ("Result:" + eval (Prompt ("Enter An expression:", "")));     } catch (Exception) {     alert (exception);     }


About catch:
try {
return a/b;

catch (Exception e) {
When B is 0, you can print a hint: The divisor cannot be 0.
}
The common principle of the anomaly is that when something goes wrong, you don't want to just shut down the program directly, so it's handled in the exception you caught, so the program can continue to run, not shut down immediately.
Above you return a/b, normally B is not 0, then return directly, will not execute the catch, but when your B is 0, you can not return the data, then the exception, the exception is caught by catch, execute the statement in the catch, and then continue to run the following code.

Eval () and catch () in JS

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.