First look at a function of JS
JavaScript eval () function
Definition and usage
The eval () function computes a string and executes the JavaScript code in it.
Grammar
Eval (String)
Parameter description
string is required. 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.
Instance
Example 1
In this example, we will use Eval () on a few strings and see the results returned:
Copy the code code as follows:
<script type= "Text/javascript" >
Eval ("X=10;y=20;document.write (x*y)")
document.write (eval ("+ +)")
var x=10
document.write (eval (x+17))
</script>
Output:
200
4
27
Example 2
Take a look at the result of the Eval () return in other cases:
Copy the code code as follows:
Eval ("2+3")//Return 5
var myeval = eval; Evalerror exceptions may be thrown
Myeval ("2+3"); Evalerror exceptions may be thrown
The following code can be used to detect whether the parameters of eval () are legitimate:
Copy the code code as follows:
try {
Alert ("Result:" + eval (Prompt ("Enter An expression:", "")));
}
catch (Exception) {
alert (exception);
}
The first method is to use the eval inside JS
Here is an example of your own writing
Copy the code code as follows:
Call ("ShowMsg");
function call (functionname) {
Eval ("this.") +functionname+ "()");
}
function ShowMsg () {
Alert ("Success");
}
Eval can automatically recognize the string you are stitching as a method and call it.
But the disadvantage is also very big, imagine that someone changed the name of the method you call the place, you can call any of your methods.
The second method is primarily used as a method of its own definition
Primarily the second method requires a specific way to write
Copy the code code as follows:
function call (functionname) {
showmsgs["ShowMsg"] ();
}
var showmsgs = {Showmsg:function () {
Alert ("Success");
}
}
Call ("ShowMsg");
JS Dynamic Call Method Name Example Introduction