zoukankan      html  css  js  c++  java
  • JSON.parse(),$parseJSON(),eval()三种方法区别

    三种方法都可以将json对象转化成json字符串

    注意 json字符串和json对象的key都要用双引号括起来 value看情况 value可取的值包括 数值型,字符串"",数组[],对象...

    json数组

    什么是json对象

      var jsonObject={"name":"zhangsan","age":22};//创建json对象

       alert(jsonObject.name+";"+jsonObject.age);//引用json对象中的子元素

    什么是json字符串(一共有两种写法)

    第一种写法(转义  "  )(推荐)

     var jsonString="{"name":"zhangsan","age":22}";

      将该json字符串转化成json对象(为什么要转化?为了要遍历json对象中的子元素)

       var person= eval("("+jsonStringr+")");

    eval()方法解析

    eval()方法:eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

    例子

    var sum="1+2";
    alert(eval(sum));

    第二种写法(单引号中嵌入双引号)

      var jsonString='{"name":"zhangsan","age":22}';

      将该json字符串转化成json对象 

      var person=JSON.parse(jsonSrtring);

      var person=$.parseJSON(jsonSrtring); //jquery提供的方法 使用时需提供js文件

    jqeury中 $.ajax(url,postdata,function(data){})

    url-->字符串类型"a.jsp"

    postdata-->key/value 形式  会自动转换成请求字符串的格式 所以不必关心

    {name:"zhagsan",age:18}

    {'name':"zhagsan",'age':18}

    {"name":"zhagsan","age":18}

    请求成功之后的回调函数

    function(data)

    data-->

    data could be xmlDoc, json, html, text, etc...
    其中返回的json一定是json字符串 {"name":"zhangsan","age":15}这种形式
    如果指定了dataType:json 或getJson 就能直接获取json对象(自动将json字符串->json对象)----- data.name data.age
    否则 需eval("("+data+")")转化(不常用)

  • 相关阅读:
    js 能实现监听F5页面刷新子iframe 而父页面不刷新
    Thinkpad X201 Gobi2000 上电信3G网络
    【M30】代理类
    C++数组
    【M27】要求或者禁止对象产生于heap之中
    C++ delete operator做了什么事
    【M33】将非尾端类设计为抽象类
    【M32】在未来时态下发展程序
    【M34】如何在同一个程序中结合C++和C
    【M25】将构造方法和非成员方法虚化
  • 原文地址:https://www.cnblogs.com/lt123/p/7207211.html
Copyright © 2011-2022 走看看