Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从函数返回后,对象结构发生更改_Javascript_Json_Getjson - Fatal编程技术网

Javascript 从函数返回后,对象结构发生更改

Javascript 从函数返回后,对象结构发生更改,javascript,json,getjson,Javascript,Json,Getjson,所以我用一个函数获取json,然后将它返回给多个请求json数据的函数 function getJSON(){ var jsonData; jsonData = $.getJSON("../assets/json-feed/file.json", function(json){ jsonData = json.data; //removes initial {} capsulation return jsonData

所以我用一个函数获取json,然后将它返回给多个请求json数据的函数

function getJSON(){
        var jsonData;
        jsonData = $.getJSON("../assets/json-feed/file.json", function(json){
            jsonData = json.data; //removes initial {} capsulation
            return jsonData;
        });
        return jsonData;
    }
当我执行内部返回时,控制台日志中的对象是
object{readyState:1}
,我必须向下挖掘另一个级别到一个名为
responseJSON:object
的键才能找到我的数据。我期待的是
对象{name:“重要标题名”,mod:“长编号”,key1:Object,key2:Object,key3:Object…}
而不是以前的格式

我如何避免对象结构中的这种变化,或者这是对象返回时经常发生的事情?有没有更有效的方法返回保留原始结构的对象?

异步函数(getJSON)不能同步处理。异步方式:

function getJSON(callback){
    $.getJSON("../assets/json-feed/file.json", function(json){
        callback(json.data); //removes initial {} capsulation
    });
  }
这样使用:

getJSON(console.log);