![](/img/trans.png)
[英]Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0
[英]Uncaught (in promise) SyntaxError: Unexpected token ' in fetch function
我有几个结构如下的JSON文件(让我们称之为info.json):
{
'data': {
'title': 'Job',
'company': 'Company',
'past': [
'fulltime': [
'Former Company'
],
'intern': [
'Women & IT',
'Priority 5'
]
],
'hobbies': [
'playing guitar',
'singing karaoke',
'playing Minecraft',
]
}
}
在一个单独的JavaScript文件中,我有一个如下所示的函数:
function getJSONInfo() {
fetch('info.json').then(function(response) {
return response.json();
}).then(function(j) {
console.log(j);
});
}
当我运行getJSONInfo()
时,我不断收到此错误:
Uncaught (in promise) SyntaxError: Unexpected token '
我错过了什么? 我在任何地方都没有流浪'
所以我不确定是什么问题。
您需要为有效json的属性使用双引号。
您可以使用json验证器(如http://jsonlint.com/)来检查语法是否正确。
另外,正如shayanypn指出的那样,“过去”应该是一个对象,而不是一个数组。 您试图将“过去”定义为对象文字,但使用方括号表示数组。
你根本没用
1-你应该使用双引号
2对象属性的错误语法
"past": [
"fulltime": [
"Former Company"
],
"intern": [
"Women & IT",
"Priority 5"
]
],
它应该睡觉
"past": {
"fulltime": [
"Former Company"
],
"intern": [
"Women & IT",
"Priority 5"
]
},
你有效的json是
{
"data": {
"title": "Job",
"company": "Company",
"past": {
"fulltime": [
"Former Company"
],
"intern": [
"Women & IT",
"Priority 5"
]
},
"hobbies": [
"playing guitar",
"singing karaoke",
"playing Minecraft"
]
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.