Javascript的eval

本文介绍了如何使用eval函数解决动态执行未知代码的问题。通过实例演示了如何让JavaScript根据变量值来动态选择对象,并实现了将两个对象的值连接起来输出的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 eval可以将字符串生成语句执行,和SQL的exec()类似。 

eval的使用场合是什么呢?有时候我们预先不知道要执行什么语句,只有当条件和参数给时才知道执行什么语句,这时候eval就派上用场了。举个例子: 

我们要做一个(),功能是输入网页中两个个对象的名称,然后程序就将这两个对象的值联接起来输出。 

 output(a,b) 

var tmpa,tmpb; 
tmpa=all.a.; 
tmpb=all.b.; 
write(tmpa+tmpb); 


output('input1','input2'); 

这样你执行的时候就会提示错误“all.a不是对象”以及“all.b不是对象”。原来java把a和b当成对象名称了,怎样能让java把a里面的值作为对象名称呢?这时候就要用eval了,把代码改成这样: 

 output(a,b) 

var tmpa,tmpb; 
tmpa=eval("all."+a+"."); 
tmpb=eval("all."+b+"."); 
write(tmpa+tmpb); 


output('input1','input2'); 

这样java就会先取出a,b的值,然后和前面的all.以及后面的.组合运行,于是就可以 
顺利取出input1和input2的值,我们的目的达到了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值