[英]javascript (no jquery) - load a local json file
我有一個本地JSON文件,通過在其前面添加var data = ...
將其轉換為JS對象:
var data = {
"people": [
{
"name": "Martin",
"surname": "Smith"
},
{
"name": "Jack",
"surname": "Smith"
}
]
}
我將其加載為: <script src="data.json" type="text/javascript">
並嘗試使用以下方法進行解析:
var h = JSON.parse(data);
我收到以下錯誤:
SyntaxError:JSON.parse:JSON數據的第1行第2列出現意外字符
當您將var data = {
放在其前面時,它不再是JSON,而變成了JavaScript。 (因此,您不應該給它一個.json
文件擴展名,而這會鼓勵服務器告訴瀏覽器它是JSON而不是JS)。
在這種情況下,這是一個將對象分配給變量的JavaScript程序。
JSON.parse
接受包含JSON的字符串 ,並將其轉換為JavaScript對象(或數組或其他數據類型)。
不要解析它。 它已經被JavaScript編譯器解析。
在MZN JSON.parse()中,您可以看到JSON.parse()
應該用於什么。 在包含JSON對象的String
上使用它,並且此方法會將其解析為您的data
變量已存在的格式。由於您的data
變量已經為JSON格式,因此您可以使用該變量了,不需要JSON.parse()
方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.