JavaScript入门教程

JavaScript简介
JavaScript语法基础
JavaScript流程控制
JavaScript函数
面向对象编程
JavaScript事件
JavaScript DOM
正则表达式
JavaScript BOM
AJAX

专题分析

浏览器兼容性
JS优化
Web前端开发规范
编辑器推荐
总结和笔记

学习助手

对象参考手册
ECMAScript分析
数据中心
QQ交流群

JavaScript eval():将字符串作为Javascript代码执行

eval() 方法说明

定义:
Javascript eval() 方法可将字符串作为Javascript代码执行,并将执行结果返回。如果参数是一个Javascript表达式,eval() 方法将计算表达式;如果参数是一个或多个JavaScript语句,eval() 方法执行该语句。

使用方法:
eval(string)

参数说明:
参数 说明
string 必须参数。一个JavaScript表达式,变量,语句或语句序列。

浏览器支持:
IE Firefox Chrome Safari Opera

W3School中这样说:该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回,因此请不要为 eval() 函数传递 String 对象来作为参数。
这种说法很容易引起误解,包括笔者在内的很多人最初都认为eval()方法不能传递参数,但是事实上,eval() 可以接受 String 类型的参数。下面的示例中我们给出了证明。

注意:虽然 eval() 的功能非常强大,但在实际应用中应该尽量少用。

浏览器支持:
IE Firefox Chrome Safari Opera

eval() 方法示例

对一个“对象字面量”使用eval()方法,并遍历该对象的属性。
<script type="text/javascript">
    var objString='{name:"IT学院",url:"http://www.itxueyuan.com",introduction:"IT学院—你的编程语言学习工具箱!"}';
    var obj=eval('('+objString+')');
    for(var property in obj){
        document.write(obj[property]+'<br />');
    }
</script>

输出:
IT学院
http://www.itxueyuan.com
IT学院—你的编程语言学习工具箱!