json和js的區別
定義:
JSON是什麼?JSON是JS的一種簡單資料格式,JSON是JavaScript原生格式,它是一種嚴格的js物件的格式,JSON的屬性名必須有雙引號,如果值是字串,也必須是雙引號。
問題:
JSON是什麼?(JSON和JavaScrip物件有什麼區別?)如何把JS物件轉換位JSON字串又如何把JSON字串轉換成JavaScript物件?
答:JSON (JavaScript Object Notation) 一種簡單的資料格式,比Xml更輕巧。JSON 是JavaScript原生格式,這意味著在JavaScript中處理JSON資料不需要任何特殊的API 或者工具包。JSON的規則很簡單:物件是一個無序的“名稱/值”對集合。一個物件以"{"(左括號)開始,“}”(右括號)結束。每個"名稱"後跟一個":"(冒號);“名稱/值”對之間使用","(逗號)分隔。
它是一種嚴格的JS物件的格式,JSON屬性名稱必須有雙引號,如果值是字串,也必須是雙引號;
JSON只是一種資料格式;
<script>
var obj ={};//這只是JS物件
var obj1={width:100,height:200}//JS物件
var obj2={'width':100,'height':100}//JS物件
var obj3={"width":100,"height":100,"name":"rose"}//JSON格式的JS物件
var obj4='{"width":100,"height":200,"name":"rose"}'
;
/*我們可以把這個稱做:JSON格式的字串 */
var array=[
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
]
/*這個叫JSON格式的陣列,是JSON的稍複雜一點的形式 */
var
arrayStr=
'['
+
'{"width":100,"height":200,"name":"rose"},'
+
'{"width":100,"height":200,"name":"rose"},'
+
'{"width":100,"height":200,"name":"rose"},'
+
']'
;/* 這個叫稍複雜一點的JSON格式的字串 */
</script>
區別 | JSON | Javascript |
含義 | 僅僅是一種資料格式 | 表示類的例項 |
傳輸 | 可以跨平臺資料傳輸,速度快 | 不能傳輸 |
表現 | 1.簡直對方式,鍵必須加雙引號 2.值不能是方法函式,不能是undefined/NaN |
1.鍵值對方式,鍵不加引號 2.值可以是函式、物件、字串、數字、boolean 等 |
相互轉換 | Json轉換Js物件 1.JSON.parse(JsonStr);(不相容IE7) 2.eval("("+jsonStr+")");(相容所有瀏覽器,但不安全,會執行json裡面的表示式?) |
js物件轉換Json JSON.stringify(jsObj); |
其他 | 呼叫JSON官網的JS,實現parse和stringify在哥哥瀏覽器的相容: |
分類: javascrip
定義:
JSON是什麼?JSON是JS的一種簡單資料格式,JSON是JavaScript原生格式,它是一種嚴格的js物件的格式,JSON的屬性名必須有雙引號,如果值是字串,也必須是雙引號。
問題:
JSON是什麼?(JSON和JavaScrip物件有什麼區別?)如何把JS物件轉換位JSON字串又如何把JSON字串轉換成JavaScript物件?
答:JSON (JavaScript Object Notation) 一種簡單的資料格式,比Xml更輕巧。JSON 是JavaScript原生格式,這意味著在JavaScript中處理JSON資料不需要任何特殊的API 或者工具包。JSON的規則很簡單:物件是一個無序的“名稱/值”對集合。一個物件以"{"(左括號)開始,“}”(右括號)結束。每個"名稱"後跟一個":"(冒號);“名稱/值”對之間使用","(逗號)分隔。
它是一種嚴格的JS物件的格式,JSON屬性名稱必須有雙引號,如果值是字串,也必須是雙引號;
JSON只是一種資料格式;
<script>
var obj ={};//這只是JS物件
var obj1={width:100,height:200}//JS物件
var obj2={'width':100,'height':100}//JS物件
var obj3={"width":100,"height":100,"name":"rose"}//JSON格式的JS物件
var obj4='{"width":100,"height":200,"name":"rose"}'
;
/*我們可以把這個稱做:JSON格式的字串 */
var array=[
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
]
/*這個叫JSON格式的陣列,是JSON的稍複雜一點的形式 */
var
arrayStr=
'['
+
'{"width":100,"height":200,"name":"rose"},'
+
'{"width":100,"height":200,"name":"rose"},'
+
'{"width":100,"height":200,"name":"rose"},'
+
']'
;/* 這個叫稍複雜一點的JSON格式的字串 */
</script>
區別 | JSON | Javascript |
含義 | 僅僅是一種資料格式 | 表示類的例項 |
傳輸 | 可以跨平臺資料傳輸,速度快 | 不能傳輸 |
表現 | 1.簡直對方式,鍵必須加雙引號 2.值不能是方法函式,不能是undefined/NaN |
1.鍵值對方式,鍵不加引號 2.值可以是函式、物件、字串、數字、boolean 等 |
相互轉換 | Json轉換Js物件 1.JSON.parse(JsonStr);(不相容IE7) 2.eval("("+jsonStr+")");(相容所有瀏覽器,但不安全,會執行json裡面的表示式?) |
js物件轉換Json JSON.stringify(jsObj); |
其他 | 呼叫JSON官網的JS,實現parse和stringify在哥哥瀏覽器的相容: |