javascript基礎(JSON的使用和低版本IE的相容)(四十七)

厚積薄發2017發表於2017-02-16

1.JSON的使用和低版本IE的相容:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="js/json2.js"></script>
		<script type="text/javascript">
			
			//建立一個js物件
			var obj = {"name":"孫悟空","age":18,"gender":"男"};
			
			/*
			 * 將obj這個JS物件,傳送到其他語言中,讓其他語言也可以使用
			 * 
			 * 	123
			 * 
			 * 
			 * 	true
			 * 	false
			 * 
			 * 
			 * 	"hello"
			 */
			
			/*
			 * JSON
			 * 	- JavaScript Object Notation
			 * 	- JS物件表示法
			 * 	- JSON是表示資料的一種格式
			 * 	- JSON實際就是一個字串,但是JSON這個字串的格式比較特殊
			 * 	- JSON的語法和JS物件的語法基本一致,但是注意JSON中的屬性名必須加雙引號
			 * 	- JSON可以被任意的語言任意的平臺所識別,並且可以轉換為任意語言的物件
			 * 		在開發中我們經常使用JSON來進行資料的交換,或者是編寫配置檔案
			 * 	- JSON語法規範:
			 * 		- JSON物件
			 * 			'{ }'
			 * 		- JSON陣列
			 * 			'[]'
			 * 		- JSON中可以使用的資料型別
			 * 			1.字串
			 * 			2.數值
			 * 			3.布林值
			 * 			4.null
			 * 			5.物件
			 * 			6.陣列
			 */
			var str = '{"name":"孫悟空","age":18,"gender":"男"}';
			var str2 = '[1,2,3,4,"hello",true]';
			//console.log(typeof str);
			
			//建立一個物件
			var arr = [
				{name:"孫悟空",age:18,gender:"男"},
				{name:"豬八戒",age:28,gender:"男"},
				{name:"沙和尚",age:38,gender:"男"},
			];
			
			//將arr轉換為JSON物件,傳送給其他的模組
			///var str3 = '[{"name":"孫悟空","age":18}]';
			
			/*
			 * 在JS中為我們提供了一個工具類,就叫JSON
			 * 	- 通過該類可以幫我們將一個JS物件,轉換為一個JSON
			 * 		也可以將一個JSON轉換為一個JS物件
			 */
			
			//將arr轉換為JSON物件
			
			arr = [
				{name:"孫悟空",age:18,gender:"男"},
				{name:"豬八戒",age:28,gender:"男"},
				{name:"沙和尚",age:38,gender:"男"},
			];
			
			/*
			 * JS物件 ----> JSON
			 * 
			 * 	JSON.stringify()
			 * 		- 該方法可以將一個JS物件轉換為JSON
			 * 		- 需要一個JS物件作為引數,可以將該物件轉換為JSON字串返回
			 */
			
			var result = JSON.stringify(arr);
			
			var str3 = '[{"name":"孫悟空","age":18,"gender":"男"},{"name":"豬八戒","age":28,"gender":"男"},{"name":"沙和尚","age":38,"gender":"男"}]';
			
			/*
			 * JSON ----> JS物件
			 * 	JSON.parse()
			 * 		- 可以將一個JSON字串轉換為JS物件
			 * 
			 * JSON這個工具類在IE7及以下的瀏覽器中不支援
			 * 		如果需要相容這些老版本的瀏覽器,則可以引入一個外部的JS檔案,來處理該問題
			 */
			
			result = JSON.parse(str3);
			
			console.log(result);
			
			
			
		</script>
	</head>
	<body>
	</body>
</html>


相關文章