中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JSON對象及Json和字面量對象的區別

發布時間:2020-06-02 21:08:44 來源:網絡 閱讀:205 作者:何老師編程 欄目:web開發

JSON對象的格式:

JSONJavaScript Object Notation)一種簡單的數據格式,比xml更輕巧。XML曾經是程序界風靡一時的語言,但JSON的出現對他也有不小的沖擊。

JSONJavaScript原生格式,這意味著在JavaScript中處理JSON數據不需要任何特殊的API或工具包。

JSON的規則很簡單:對象是一個無序的“‘名稱/值’對”集合。一個對象以“{”(左括號)開始,“}”(右括號)結束。每個“名稱”后跟一個“:”(冒號);“‘名稱/值’對”之間使用“,”(逗號)分隔。

規則如下:

1)?JSON的屬性名稱要求以“雙引號”包裹 ?????

2)?映射用冒號(“:”)表示。名稱:

3)?并列的數據之間用逗號(“,”)分隔。名稱1:1,名稱2:2

4)?映射的集合(對象)用大括號({}”)表示。{名稱1:1,名稱2:2}

5)?并列數據的集合(數組)用方括號([])表示。

?????????[

???????????{名稱1:,名稱2:2},

???????????{名稱1:,名稱2:2}

?????????]

6)?元素值可具有的類型:string, number, object, array, true, false, null

1.1.?JSON示例

JSON 用冒號(而不是等號)來賦值。每一條賦值語句用逗號分開。整個對象用大括號封裝起來。可用大括號分級嵌套數據。

var obj = {};

對象描述中存儲的數據可以是字符串,數字或者布爾值。對象描述也可存儲函數,那就是對象的方法。

?

1.2.?解析JSON

JSON 只是一種文本字符串。

可以JavaScript eval 語句。函數 eval 會把一個字符串當作它的參數。然后這個字符串會被當作 JavaScript 代碼來執行。因為 JSON 的字符串就是由 JavaScript 代碼構成的,所以它本身是可執行的

代碼實例:

<script language="JavaScript">

?????var jsonObj?= {"name":"xiaoq","age":18};

?????//?查看json對象的原生結構

?????console.debug(jsonObj); // "({name:"xiaoq", age:18})"

?</script>

<script language="JavaScript">

?????var jsonStr =’{"name":"xiaoq","age":18}’;

?????//?查看json對象的原生結構

?????console.debug(eval(“(+jsonStr+)”)); //

?</script>

?

1.3.?JSONJS字面量(重要)

JS字面量:

{name:”小強}

?

JSON

???{name:”小強}

?

格式的識別,可以采用字符串轉換方式。

?

但是,eval的參數是js字符串(并不是JSON字符串)。

var obj = eval("(" + jsonText + ")");

?

?

ECMAScript3.1標準中,已經提供了一個名為JSON的全局對象,專門用來解析和反解析JSON字符串。

var obj = JSON.parse("{}");?// 字符串轉JSON

JSON.stringify(obj);// 對象轉JSON

?

1.4.?操作JSON

例子1

<script language="JavaScript">

?????var people ={"firstName": "Brett", "lastName":"McLaughlin",

?????"email": "brett@newInstance.com" };

?????alert(people.firstName);

?????alert(people.lastName);

?????alert(people.email);

?</script>


?

?

?

?

<script language="JavaScript">

??????var people =[

?????????????????????{"firstName": "Brett","email": "brett@newInstance.com" },

?????????????????????{"firstName": "Mary","email": "mary@newInstance.com" }

????????????????];

?

????alert(people[0].firstName);

????alert(people[0].email);

????alert(people[1].firstName);

????alert(people[1].email);

?</script>

?

?

?

?<script language="JavaScript">

??????var people ={

?????????????"username":"mary",

?????????????"age":"20",

?????????????"info":{"tel":"1234566","celltelphone":788666},

?????????????"address":[

?????????????????????{"city":"beijing","code":"1000022"},

?????????????????????{"city":"shanghai","code":"2210444"}

??????????????]

????????};

?

??????window.alert(people.username);

??????window.alert(people.info.tel);

??????window.alert(people.address[0].city);

?</script>

?

1.5.?JSON小結

優點:

作為一種數據傳輸格式,JSON XML 很相似,但是它更加靈巧。

JSON 不需要從服務器端發送含有特定內容類型的首部信息。

缺點:

語法過于嚴謹

代碼不易讀

eval 函數存在風險

?

簡述JavaScript字面量和JSON之間的區別??


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

酉阳| 讷河市| 红桥区| 湘潭市| 乾安县| 铁岭县| 云龙县| 大竹县| 普兰店市| 盐城市| 遵义县| 诏安县| 迭部县| 澄迈县| 五家渠市| 新化县| 鹿邑县| 武功县| 承德市| 汪清县| 珲春市| 泗洪县| 青州市| 磴口县| 出国| 措美县| 保靖县| 南昌市| 黄骅市| 武定县| 寻乌县| 屯留县| 博罗县| 孟州市| 布尔津县| 电白县| 湟源县| 宝清县| 贵南县| 抚顺县| 进贤县|