Javascript 加载JSON文件,错误未定义

Javascript 加载JSON文件,错误未定义,javascript,json,load,Javascript,Json,Load,我正在尝试加载一个JSON文件,我将其用作常量文件,但我总是得到未定义的错误,有人能帮忙吗 代码如下: function loadJsonFile(filePath){ $.getJSON(filePath, function(Mydata) { alert(Mydata.length); return Mydata; }) error(function() { alert("error"); }); 常量文件的结构为: { "var1":"v1",

我正在尝试加载一个JSON文件,我将其用作常量文件,但我总是得到未定义的错误,有人能帮忙吗

代码如下:

function loadJsonFile(filePath){
 $.getJSON(filePath, function(Mydata) {
    alert(Mydata.length);
    return Mydata;
    })
error(function() { alert("error"); 
});
常量文件的结构为:

{
    "var1":"v1",
    "var2":"v2"
}
提前感谢您的帮助。

两件事: 1.您是否缺少一个JSON.parse()

  • 请记住,有效的json对象必须位于comillas(“|”)之间

    parse({“var1”:“v1”,“var2”:“v2”})

  • 您将得到错误。正确的方法是:

    JSON.parse('{ "var1":"v1", "var2":"v2" }');
    

    要调用loadJsonFile返回值,必须将return语句与$.getJSON()成功回调函数一起放置。失败处理程序中还有一些语法错误,应将.fail()用作


    你在哪里得到错误未定义,哪一行?你还缺少一个点。在
    错误之间是打字错误还是确实缺少点确保你给出的文件路径正确,让我们知道你在开发人员的网络选项卡中得到了什么错误tool@PatrickEvans这是一个错误r当我键入问题时,调用我的函数时出现错误:var data=loadJsonFile('./constants.json');alert(data[“var1”]);@vinayakj是的,路径是正确的,我得到一个错误:“Uncaught TypeError:无法读取@oxacarga的未定义可能重复的属性'var1',我添加了json.Parse,但总是相同的错误:(对于('))我直接放文件路径,所以不需要放它不?它的getJSON方法,JSON.parse是隐式的返回我以后不能在我的主函数中使用它!你能帮我吗?我不能在我的主函数中调用它:(你能帮我用你所有的代码创建一个JSFIDLE,这样我就可以修改并交给你了谢谢@vinayakj,我考虑过更新,它可以工作。顺便说一句,我正在寻找一个可以对我的一小部分代码进行代码审查的人,你能接受我的请求吗?谢谢,你能在yatikamika[at]gmail上签名吗[DOT]com显然我无法在这里与您联系:/
    
    JSON.parse('{ "var1":"v1", "var2":"v2" }');
    
    function loadJsonFile(filePath) {
        var data = null;
        $.getJSON(filePath, function(Mydata) {
            alert(Mydata.length);
            data = Mydata;
        })
        .fail(function() {
            alert("error");
        });
        return data;
    }
    
    function loadJsonFile(filePath, callback){
           $.getJSON(filePath)
            .success(function(Mydata) {
                  callback(data);
           })
           .fail(function() { alert("error")}); ;
    });
    
    function doStuff(data){
      alert(data.var1)
    }
    
    loadJsonFile('url', doStuff);