<script type="text/javascript">var obj=(name:"jim",age:20);
//var obj=eval(name:"jim",age:20);
alert(obj.name);
eval(alert("ok"));</script>
//var obj=eval(name:"jim",age:20);
alert(obj.name);
eval(alert("ok"));</script>
解决方案 »
- prototype 1.4 Form对象中getInputs怎么用?
- 关于firefox 中window.returnValue的提示,以及其他几个问题!
- javascript做的东西在firefox上没有效果
- 奇怪为什么会多输出一个undefined?请各位朋友指点一下,谢谢了
- 怎么循环取得页面上所有select下拉框的value
- Windows NT 脚本命令 和 Windows 宿主脚本 不是一回事情吧??哪里与WindowsNT 脚本命令的学习手册之类的下载啊?
- 获得iframe框架,滚动条与iframe框架左边的距离
- 请问JAVAScript高手一个简单的日期处理问题,我想将当前日期所在的星期内的日期输出来,
- 为什么运行没有显示啊???
- js $.get url 参数问题,请教各位
- 求助`简单修改一段JS..能在FF火狐下运行..
- 请问一下,用javascript 可不可以修改 form 里面的onSubmit 的值!
//var obj=eval(name:"jim",age:20);
alert(obj.name); </script>
eval的使用场合是什么呢?有时候我们预先不知道要执行什么语句,只有当条件和参数给时才知道执行什么语句,这时候eval就派上用场了。举个例子:
我们要做一个function(),功能是输入网页中两个个对象的名称,然后程序就将这两个对象的值联接起来输出。
function output(a,b)
{
var tmpa,tmpb;
tmpa=document.all.a.value;
tmpb=document.all.b.value;
document.write(tmpa+tmpb);
}
output('input1','input2');
这样你执行的时候就会提示错误“document.all.a不是对象”以及“document.all.b不是对象”。原来javascript把a和b当成对象名称了,怎样能让javascript把a里面的值作为对象名称呢?这时候就要用eval了,把代码改成这样:
function output(a,b)
{
var tmpa,tmpb;
tmpa=eval("document.all."+a+".value");
tmpb=eval("document.all."+b+".value");
document.write(tmpa+tmpb);
}
output('input1','input2');
这样javascript就会先取出a,b的值,然后和前面的document.all.以及后面的.value组合运行,于是就可以
顺利取出input1和input2的值. 0 0 0
(请您对文章做出评价)
//var obj=eval(name:"jim",age:20);
alert(obj.name);
eval('alert('ok')'); </script>