react使用eval兼容IE浏览器

今天在项目开发中使用了eval方法,使用的目的是将后端返的字符串转换成我想要的方法,但是项目在360和IE浏览器下面报了下图错误。

解决方法:

方法1:是将你要转换的字符串用"(0 || " + 字符串 + ")"这种方式包起来,具体写法如下所示:(str为你为转换的字符串)

语法:eval("(0 ||" + str +")")或者window.eval("(0 ||" + str +")")

实例:(如下图)

图片说明:上图是在IE浏览器下面做的测试,明明都使用了上述语法但第一个语句还是报了错,其报错的原因不是语法的问题,是因为IE浏览器不兼容箭头函数,所以才会报错,建议大家以后使用eval时注意一下这些细节。

方法2:在解决IE低版本,如IE6/7/8等版本浏览器可以用一下语法。

语法:[function(){alert('Test!')}][0] 或 0?0:function(){alert('Test!')}

参考链接:https://blog.csdn.net/u011277123/article/details/53063391

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值