0

这里完全是初学者。我有 jquery 库。我调用了一个返回 json 的 api。我想使用 jquery 库中的 parseJSON 函数来解析它。简单地说,我不知道该怎么做。

我可以在 jquery 库中找到该函数,它看起来像这样:

parseJSON: function( data ) {
    if ( typeof data !== "string" || !data ) {
        return null;
    }

    // Make sure leading/trailing whitespace is removed (IE can't handle it)
    data = jQuery.trim( data );

    // Attempt to parse using the native JSON parser first
    if ( window.JSON && window.JSON.parse ) {
        return window.JSON.parse( data );
    }

    // Make sure the incoming data is actual JSON
    // Logic borrowed from http://json.org/json2.js
    if ( rvalidchars.test( data.replace( rvalidescape, "@" )
        .replace( rvalidtokens, "]" )
        .replace( rvalidbraces, "")) ) {

        return ( new Function( "return " + data ) )();

    }
    jQuery.error( "Invalid JSON: " + data );
},

我如何通过它发送我的json?

4

4 回答 4

2
var obj = jQuery.parseJSON(yourJsonObj);
于 2012-10-03T02:03:05.840 回答
2

如果您使用的是 jQuery AJAX 命令,它们中的大多数都带有一个 dataType 参数。将 dataType 设置为 'json' 将自动解析返回的数据。

$.ajax({
  url: url,
  dataType: 'json',
  data: data,
  success: callback
});

在这种情况下,数据最终将成为基于从 AJAX 调用返回的 JSON 的对象。

于 2012-10-03T02:10:41.917 回答
1

如果您使用jQuery.getJSON函数,您可以访问您的 API 端点并在一次调用中解析所有响应。

$.getJSON("/my_resource.json", function(data) {
  // Use data here
});
于 2012-10-03T02:06:34.970 回答
0

jQuery 的 parseJSON() 函数会将 json 转换为 javascript 对象。

如果您的 json 是,例如:

{ "firstname" : "john", "lastname" : "doe" }

然后当您使用 parseJSON 时,您可以像这样访问属性:

var json = '{ "firstname" : "john", "lastname" : "doe" }';
var person = jQuery.parseJSON(json);

console.log(person.firstname); //will show john
console.log(person.lastname); //will show doe

那应该让你开始。有关更多信息,请阅读此处的文档:http: //api.jquery.com/jQuery.parseJSON/

于 2012-10-03T02:09:27.653 回答