console.log(result) 返回 [object Object]。如何获得 result.name?

2022-08-30 01:23:05

我的脚本由于 .[object Object]console.log(result)

有人可以解释如何返回和从?console.logidnameresult

$.ajaxSetup({ traditional: true });

var uri = "";

$("#enginesOuputWaiter").show();    
$.ajax({
    type: "GET",
    url: uri,
    dataType: "jsonp",
    ContentType:'application/javascript',
    data :{'text' : article},
    error: function(result) {
        $("#enginesOuputWaiter").hide();
        if(result.statusText = 'success') {
            console.log("ok");
            console.log(result);
        } else {
            $("#enginesOuput").text('Invalid query.');
        }
    }
});

答案 1

用于获取字符串格式的 JSON。console.log(JSON.stringify(result))

编辑:如果您打算从结果对象中获取id和其他属性,并且您希望在控制台上看到它以了解它是否存在,那么您可以检查并访问该属性(如果它确实存在):hasOwnProperty

var obj = {id : "007", name : "James Bond"};
console.log(obj);                    // Object { id: "007", name: "James Bond" }
console.log(JSON.stringify(obj));    //{"id":"007","name":"James Bond"}
if (obj.hasOwnProperty("id")){
    console.log(obj.id);             //007
}

答案 2

尝试添加以将 JS 对象转换为 JSON 字符串。JSON.stringify(result)

从您的代码中,我可以看到您正在记录如果AJAX请求失败时调用的结果,因此我不确定您将如何访问id /name /etc.然后(您正在检查错误条件内的成功!error

请注意,如果您使用Chrome的控制台,则应该能够浏览对象,而无需字符串化JSON,这使得调试更加容易。