javascript中的eval(code)

1、eval(code)方法就像是一个完整的ECMAScript解析器,它只接受一个参数code,code可以是 javascript表达式 或待执行的ECMAScript(或javascript) 字符串 。(表达式就是一个没有分号的语句,字符串就是带有引号的语句)
2、eval("alert("ddd")");以及eval( alert("aaa"));都是有效的。
3、如果code包含一个表达式,则eval(code)对该表达式求值并返回这个值。
4、一些表达式(如看起来像语句的 对象函数直接量)在传入eval(code)是必须包含在圆括号中以消除多以性。比如eval('('+code+')');
5、如果eval中传入的参数不是字符串原始值,比如“ddd”,它会直接返回这个值,比如
alert(eval(prompt("aaaaaaaaaaaa","")));由于eval()得到的是prompt("aaaaaaaaaaaa","")这个函数,它所做的动作,而不会返回动作后得到的字串,因此这个语句会产生错误。
但是,如果 alert(eval(prompt("aaaaaaaaaaaa","")));就不会产生错误了
6、JSON经常会传入JSON字符串,如‘{”name1“:value1,”name2“,value2}’,然后被eval解析为javascript对象,此时,应该这样写eval(‘(' + ‘{”name1“:value1,”name2“,value2}’+')');

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值