在移动游猎中解析错误

时间:2016-05-05 12:01:42

标签: javascript json parsing mobile-safari

我很难弄清楚我的js脚本失败的原因。我从服务器请求几个json对象。它适用于chrome,firefox和IE,但是在移动safari上它失败了。我使用纯js而不使用jQuery。

我得到的错误如下:

  

第31行的Javascript错误:   SyntaxError:解析错误

     

第78行的Javascript错误:   SyntaxError:解析错误

     

第52行的Javascript错误:   ReferenceError:无法找到变量:init

有问题的行如下

31:

[ "$(...)" ]

78:

for (var i = 0; i < res.class.length; i++)

52:

res.class = JSON.parse(response).classes;

请注意,这些行来自2个不同的js文件。 loadData回调只解析响应。

这是getData函数:

function init()
{
        getData(loadData, "./js/data/classes.json");    
}

顺序顺序应该是这样的

1)onload call init()

2)init通过ajax加载json文件

3)解析json

4)访问已解析的对象

我做了一些研究,发现了某种格式检测&#34;元标记,然而这并没有帮助。

以下是json的示例条目。

function getData(callback, filePath){
    var xhttp = new XMLHttpRequest();
    var response;
    xhttp.onreadystatechange = function() {
        if (xhttp.readyState == 4 && xhttp.status == 200){
            callback(xhttp.responseText);
        }
    };
    xhttp.open("GET", filePath, true);
    xhttp.overrideMimeType("application/json");
    xhttp.send();
}

我的猜测是JSON解析器在某些地方失败了。

0 个答案:

没有答案
相关问题