JSON與JS的區別
阿新 • • 發佈:2017-08-13
dcb m60 iap per psr noi dom imap emctl
JSON是什麽?(JSON和JavaScript對象有什麽區別?)如何把JS對象轉化為JSON字符串,又如何把JSON字符串轉化為JavaScript對象?
JSON (JavaScript Object Notation)一種簡單的數據格式,比xml更輕巧。 JSON 是 JavaScript 原生格式, 這意味著在JavaScript 中處理 JSON 數據不需要任何特殊的 API 或工具包。JSON的規則很簡單: 對象是一個無序的“名稱/值”對集合。一個對象以“{”(左括號)開始,“}”(右括號)結束。每個“名稱”後跟一個“:”(冒號);“名稱/值”對之間 使用“,”(逗號)分隔。
它是一種嚴格的js對象的格式,JSON的屬性名必須有雙引號,如果值是字符串,也必須是雙引號;
JSON只是一種數據格式(或者叫數據形式);
<script> var obj2={};//這只是JS對象 var obj3={width:100,height:200};/*這跟JSON就更不沾邊了,只是JS的 對象 */ var obj4={‘width‘:100,‘height‘:200};/*這跟JSON就更不沾邊了,只是JS的對象 */ var obj5={"width":100,"height":200,"name":"rose"}; /*我們可以把這個稱做:JSON格式的JavaScript對象*/ var str1=‘{"width":100,"height":200,"name":"rose"}‘;/*我們可以把這個稱做:JSON格式的字符串 */ var a=[ {"width":100,"height":200,"name":"rose"}, {"width":100,"height":200,"name":"rose"}, {"width":100,"height":200,"name":"rose"}, ]; /*這個叫JSON格式的數組,是JSON的稍復雜一點的形式 */ var str2=‘[‘+ ‘{"width":100,"height":200,"name":"rose"},‘+ ‘{"width":100,"height":200,"name":"rose"},‘+ ‘{"width":100,"height":200,"name":"rose"},‘+ ‘]‘ ; /* 這個叫稍復雜一點的JSON格式的字符串 */ </script>
JSON和JS對象區別對比表
總而言之你可以理解為JSON是JS下的一種數據格式,他從屬於JS,並且在處理JSON數據時可直接使用JS內置API
JSON實例
{
"sites": [
{ "name":"菜鳥教程" , "url":"www.runoob.com" },
{ "name":"google" , "url":"www.google.com" },
{ "name":"微博" , "url":"www.weibo.com" }
]
}
JSON - 轉換為 JavaScript 對象
JSON 文本格式在語法上與創建 JavaScript 對象的代碼相同。
由於這種相似性,無需解析器,JavaScript 程序能夠使用內建的 eval() 函數,用 JSON 數據來生成原生的 JavaScript 對象
JSON與JS的區別