当前位置:首页 > 编程技术 > 正文

js中eval函数是干嘛的?用途及详解

js中eval函数是干嘛的?用途及详解

js-eval( eval() 函数在JavaScript中扮演着特殊的角色,它能将接收到的字符串当作代码来。其主要语法是通过调用 eval(string),其中 s...

js-eval()

eval() 函数在JavaScript中扮演着特殊的角色,它能将接收到的字符串当作代码来。其主要语法是通过调用 eval(string),其中 string 参数应为表示表达式、语句或一语句的字符串。评估表达式时,eval会根据变量和已存在对象的属性来求值。

方法一:使用eval()函数 首先,定义一个包含数组元素的字符串。var str = [a, b, c, d];接着,利用eval()函数将字符串解析成数组。var arr = eval( + str + );最后,打印原始字符串、转换后的数组及数组的第一个值。

如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,并通过该属性调用它,则 ECMAScript 实现允许抛出一个 EvalError 异常。抛出:如果参数中没有合法的表达式和语句,则抛出 SyntaxError 异常。如果调用 eval(),则抛出 EvalError 异常。

eval()函数的特点和用途 通过eval()的代码包含在该次调用的环境中,因此被的代码具有与该环境相同的作用域链。基于这个特点, eval()可以让写在函数里的代码运行在全局作用域中。,比如我们通过ajax请求获取了一段js代码,需要在全局作用域中,可代码却是在函数中获得的。

eval方法是在运行时对脚本进行解释,而普通的javascript会有一个预处理的过程。所以会有一些性能上的损失,但是通常通过一些手段能将这些性能损失降低到非常少。不至于谈虎色变。eval通常用在一些需要动态字符串,或将字符串转为javascript对象的场景,比如将json字符串转为javascript对象。

最新文章