JSON.parse()和eval()区别

  JSON.parse()只会将标准的Json字符串(key和value都由双引号引起来,最外面用单引号括住)转为JSON对象。

  eval()在转换字符串的时候是比较松的,即使不是标准的Json字符串也会被转换成Json对象。更重要的是eval()方法会执行要解析的字符串中的代码,这一点是十分危险的。

    比如:

      var temp1 = 1;

  var temp2 = '++temp1';

    temp2用JSON.parse()方法解析会报错,而用eval()方法却会得到2.

     记住一点:程序里面使用eval()方法解析是很危险的代码,尽量使用JSON.parse()。

原文地址:https://www.cnblogs.com/xingkai/p/4864170.html