JSON 是一種輕量級數(shù)據(jù)格式,廣泛用于 Web 應(yīng)用程序中的數(shù)據(jù)交換。JSON 不僅易于閱讀和理解,而且易于編寫和解析。它既支持在線數(shù)據(jù)交換,也支持離線數(shù)據(jù)存儲。為了進(jìn)一步增強(qiáng) JSON 的功能,人們開發(fā)了很多 JSON 擴(kuò)展文件,本文將介紹幾個流行的擴(kuò)展文件。
1. JSONP
function addScriptTag(src) { var script = document.createElement('script'); script.setAttribute("type","text/javascript"); script.src = src; document.body.appendChild(script); } function foo(data) { console.log(data); } addScriptTag("http://example.com/api?callback=foo");
2. JSON-LD
{ "@context": { "name": "http://xmlns.com/foaf/0.1/name", "homepage": { "@id": "http://xmlns.com/foaf/0.1/workplaceHomepage", "@type": "@id" }, "Person": "http://xmlns.com/foaf/0.1/Person" }, "@id": "http://me.example.com", "@type": "Person", "name": "Jane Doe", "homepage": "http://example.com" }
3. BSON
{ "name": "John", "age": 30, "address": { "street": "123 Main St.", "city": "Anytown", "state": "NY", "zip": "12345" }, "phones": [ { "type": "home", "number": "555-555-1234" }, { "type": "work", "number": "555-555-5678" } ] }
總結(jié)
JSON 擴(kuò)展文件豐富了 JSON 的功能,使其更加適用于不同類型的應(yīng)用程序。這些擴(kuò)展文件有的擴(kuò)展了 JSON 的語法,例如 JSONP,有的增加了元數(shù)據(jù),例如 JSON-LD,有的則是基于二進(jìn)制格式的,例如 BSON。當(dāng)你需要在 Web 應(yīng)用程序中進(jìn)行數(shù)據(jù)交換時,可以根據(jù)自己的需求選擇不同的 JSON 擴(kuò)展文件。