zoukankan      html  css  js  c++  java
  • js中将字符串转换成json的三种方式

    使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON )。

    ECMA-262(E3) 中没有将JSON概念写到标准中,还好在 ECMA-262(E5) 中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法。

    1,eval方式解析,恐怕这是最早的解析方式了。如下:

    function strToJson(str) {
        var json = eval('(' + str + ')');
        return json;
    }

    记得别忘了str两旁的小括号。


    2,new Function形式,比较怪异哦。如下  【推荐】

    function strToJson(str) {
        var json = (new Function("return " + str))();
        return json;
    }

    3,使用全局的JSON对象,如下:

    function strToJson(str) {
        return JSON.parse(str);
    }

    目前 IE8(S)/Firefox3.5+/Chrome4/Safari4/Opera10 已实现了该方法

    使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下

    var str = '{name:"jack"}';
    var obj = JSON.parse(str); // --> parse error

    name没有用引号引起来,使用JSON.parse所有浏览器中均抛异常,解析失败。而前两种方式则没问题。

  • 相关阅读:
    crontab使用
    python 学习 第一课
    php调用阿里大鱼 接口curl
    thinkphp 动态 级联
    nginx重启
    linux查看 文件夹大小
    mysql convert
    mysql 数据库导入 导出,解决 导入 错误问题
    .net 更新数据 ado.net parameter
    PHP的超全局变量$_SERVER
  • 原文地址:https://www.cnblogs.com/sky6699/p/13024879.html
Copyright © 2011-2022 走看看