JS中的eval和document.getElementById

val和document.getElementById都能把字符串转化为对应的对象或是数值,但两者之间还是有区别的,请看以下几个例子:
假如页面上存在ID为aaa的标记,以下a和b得到的是一样的结果
var a=eval('aaa');
var b=document.getElementById('aaa');
var a=eval('aaa');
var b=document.getElementById('aaa');

如果页面上不存在aaa标记,则eval将发生错误,document.getElementById返回null值

另一种情况就是字符串为表达式时
alert(eval('1+1')); //返回2
alert(document.getElementById('1+1')); //返回null因为getElementById会把'1+1'看作
//标记ID进行查找
alert(eval('aaa.href')); //将返回aaa的href属性
alert(document.getElementById('aaa.href')); //和上面一样会返回null
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值