我一直得到“Uncaught SyntaxError:Unexpected token o” [英] I keep getting "Uncaught SyntaxError: Unexpected token o"

查看:212
本文介绍了我一直得到“Uncaught SyntaxError:Unexpected token o”的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试学习一些html / css / javascript,所以我自己写了一个教学项目。

I'm trying to learn some html/css/javascript, so I'm writing myself a teaching project.

这个想法是包含一些词汇一个json文件,然后将其加载到表中。我设法加载文件并打印出其中一个值,然后我开始编写代码将值加载到表中。

The idea was to have some vocabulary contained in a json file which would then be loaded into a table. I managed to load the file in and print out one of its values, after which I began writing the code to load the values into the table.

这样做后我开始得到一个错误,所以我删除了我写的所有代码,只剩下一行(以前工作过的同一行)...只有错误仍然存​​在。

After doing that I started getting an error, so I removed all the code I had written, leaving me with only one line (the same line that had worked before) ... only the error is still there.

错误如下:

Uncaught SyntaxError: Unexpected token o
(anonymous function)script.js:10
jQuery.Callbacks.firejquery-1.7.js:1064
jQuery.Callbacks.self.fireWithjquery-1.7.js:1182
donejquery-1.7.js:7454
jQuery.ajaxTransport.send.callback

我的javascript代码包含在一个单独的文件中,只是这样:

My javascript code is contained in a separate file and is simply this:

function loadPageIntoDiv(){
    document.getElementById("wokabWeeks").style.display = "block";
}

function loadWokab(){
    //also tried getJSON which threw the same error
    jQuery.get('wokab.json', function(data) {
        var glacier = JSON.parse(data);
    });
}

我的JSON文件现在只有以下内容:

And my JSON file just has the following right now:

[
    {
        "english": "bag",
        "kana": "kaban",
        "kanji": "K"
    },

    {
        "english": "glasses",
        "kana": "megane",
        "kanji": "M"
    }
]

现在第11行报告错误,即 var glacier = JSON.parse(data); 行。

Now the error is reported in line 11 which is the var glacier = JSON.parse(data); line.

当我删除json文件时,我收到错误:GET http://.../wokab.json 404(Not Found)所以我知道它正在加载它(或至少试图)。

When I remove the json file I get the error: "GET http://.../wokab.json 404 (Not Found)" so I know it's loading it (or at least trying to).

推荐答案

看起来像jQuery需要猜测数据类型。即使您没有调用getJSON(),它也会执行JSON解析 - 然后当您尝试在对象上调用JSON.parse()时,您将收到错误。

Looks like jQuery takes a guess about the datatype. It does the JSON parsing even though you're not calling getJSON()-- then when you try to call JSON.parse() on an object, you're getting the error.

可以在 Aditya Mittal的答案中找到进一步的说明。

Further explanation can be found in Aditya Mittal's answer.

这篇关于我一直得到“Uncaught SyntaxError:Unexpected token o”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆