引自:https://www.cnblogs.com/lxg0/p/7805266.html

通常我们在使用ajax获取到后台返回的json数据时,需要使用 eval 这个方法将json字符串转换成对象数组, 像这样:

obj = eval('('+jsonStr+')');//方法1
obj = JSON.parse('('+jsonStr+')');//方法2
//但是如果遇到数据不是json格式,方法2会失效,并且在某些网站中,禁用eval,比如:https://www.makeapie.com/explore.html#sort=rank~timeframe=all~author=all

找到了替代eval的方法如下:

//计算表达式的值
function evil(fn) {
    var Fn = Function;  //一个变量指向Function,防止有些前端编译工具报错
    return new Fn('return ' + fn)();
}

相关文章:

  • 2022-12-23
  • 2021-11-27
  • 2022-12-23
  • 2021-06-05
  • 2021-07-04
  • 2022-12-23
  • 2022-01-01
  • 2021-06-27
猜你喜欢
  • 2022-02-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-20
相关资源
相似解决方案