在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是JSON JSON的語法規則

jmiy_worldofai ? 來源:機器人及PLC自動化應用 ? 作者:微笑應對 ? 2021-08-25 15:40 ? 次閱讀

JSON數據交換格式

JSON(JavaScript Object Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基于 ECMAScript (歐洲計算機協會制定的js規范)的一個子集,采用完全獨立于編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。易于人閱讀和編寫,同時也易于機器解析和生成,并有效地提升網絡傳輸效率。

JSON是Douglas Crockford在2001年開始推廣使用的數據格式,在2005年-2006年正式成為主流的數據格式,雅虎和谷歌就在那時候開始廣泛地使用JSON格式。

JSON 語法規則

JSON是一個標記符的序列。這套標記符包含六個構造字符、字符串、數字和三個字面名。

JSON是一個序列化的對象或數組。

1. 六個構造字符:

begin-array = ws %x5B ws ; [ 左方括號

begin-object = ws %x7B ws ; { 左大括號

end-array = ws %x5D ws ; ] 右方括號

end-object = ws %x7D ws ; } 右大括號

name-separator = ws %x3A ws ; : 冒號

value-separator = ws %x2C ws ; , 逗號

2. 在這六個構造字符的前或后允許存在無意義的空白符(ws):

ws = *(%x20 /; 空間

%x09 /; 水平標簽

%x0A /; 換行或換行

%x0D); 回程

3.JSON的值:

3.1 JSON的構成: ws 值 ws [1]

3.2值可以是對象、數組、數字、字符串或者三個字面值(false、null、true)中的一個。值中的字面值中的英文必須使用小寫。

3.2.1對象由花括號括起來的逗號分割的成員構成,成員是字符串鍵和上文所述的值由逗號分割的鍵值對組成,如:

1 {“name”: “John Doe”, “age”: 18, “address”: {“country” : “china”, “zip-code”: “10000”}}

3.2.2數組是由方括號括起來的一組值構成,如:

1[3, 1, 4, 1, 5, 9, 2, 6]

3.2.3 字符串與C或者Java的字符串非常相似。字符串是由雙引號包圍的任意數量Unicode字符的集合,使用反斜線轉義。一個字符(character)即一個單獨的字符串(character string)。

3.2.4數字也與C或者Java的數值非常相似。除去未曾使用的八進制與十六進制格式。除去一些編碼細節。 [2]

一些合法的JSON的實例:

1{“a”: 1, “b”: [1, 2, 3]}

1[1, 2, “3”, {“a”: 4}]

13.14

1“plain_text”

JSON 與 JS 對象的關系

很多人搞不清楚 JSON 和 JS 對象的關系,甚至連誰是誰都不清楚。其實,可以這么理解:

JSON 是 JS 對象的字符串表示法,它使用文本表示一個 JS 對象的信息,本質是一個字符串。

1var obj = {a: ‘Hello’, b: ‘World’}; //這是一個對象,注意鍵名也是可以使用引號包裹的

1var json = ‘{“a”: “Hello”, “b”: “World”}’; //這是一個 JSON 字符串,本質是一個字符串

JSON 和 JS 對象互轉

要實現從JSON字符串轉換為JS對象,使用 JSON.parse() 方法:

1var obj = JSON.parse(‘{“a”: “Hello”, “b”: “World”}’); //結果是 {a: ‘Hello’, b: ‘World’}

要實現從JS對象轉換為JSON字符串,使用 JSON.stringify() 方法:

1var json = JSON.stringify({a: ‘Hello’, b: ‘World’}); //結果是 ‘{“a”: “Hello”, “b”: “World”}’

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據
    +關注

    關注

    8

    文章

    7247

    瀏覽量

    91309
  • JS
    JS
    +關注

    關注

    0

    文章

    78

    瀏覽量

    18410
  • JSON
    +關注

    關注

    0

    文章

    122

    瀏覽量

    7295

原文標題:JSON數據交換格式

文章出處:【微信號:worldofai,微信公眾號:worldofai】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    PLC通過智能網關實現HTTP協議通訊,先取得token后再提交獲取JSON格式的數據文件

    智能網關IGT-DSER集成了多種PLC的原廠協議,方便實現各種PLC、智能儀表通過HTTP協議與MES等各種系統平臺通訊對接。PLC內不用編寫程序,通過網關的參數配置軟件(在附件中)配置JSON
    發表于 06-17 16:07

    迅為RK3568開發板編寫bundle.json文件

    bundle.json 文件內容如下所示: 下面是對各個字段的解釋: name: \"@ohos/demos\" - 這是組件或項目的名稱,這里表示它屬于 OHOS
    發表于 06-05 15:38

    不用聯網不用編程,PLC通過智能網關快速實現HTTP協議JSON格式與MES等系統平臺雙向數據通訊

    智能網關IGT-DSER支持POST/GET/PUT等多種方法,可同時作為HTTP協議的客戶端和服務端。作為客戶端通訊時將JSON文件提交給HTTP的服務端, 如果服務端有返回的JSON,網關
    的頭像 發表于 05-13 14:40 ?224次閱讀
    不用聯網不用編程,PLC通過智能網關快速實現HTTP協議<b class='flag-5'>JSON</b>格式與MES等系統平臺雙向數據通訊

    配置Skywalking告警

    和Metrics .NET6 對接 Skywalking 添加依賴 編輯Skywalking配置文件skyapm.json 在launchSettings.json文件配置SK 在startup.cs文件中添加
    的頭像 發表于 01-16 10:58 ?518次閱讀
    配置Skywalking告警

    think-cell——使用JSON數據實現自動化(二)

    26.4 遠程提供模板 還可以通過遠程服務器提供帶有 think-cell 圖表的模板文件。在這種情況下,鍵的值是 URL 而不是本地路徑,如上面的遠程 JSON 示例所示。URL 可以指定為協議
    的頭像 發表于 01-03 10:12 ?326次閱讀
    think-cell——使用<b class='flag-5'>JSON</b>數據實現自動化(二)

    think-cell——使用JSON數據實現自動化(一)

    您可以使用 JSON 中的數據來復制最初作為模板創建的圖表,并為其提供新的數據表。您可以控制使用特定模板構建新演示文稿的順序。模板也可以多次使用。 PowerPoint 模板和 JSON 數據都可以
    的頭像 發表于 01-02 13:37 ?355次閱讀
    think-cell——使用<b class='flag-5'>JSON</b>數據實現自動化(一)

    實例篇 4G模組軟件之json數據處理!

    今天我會把4G模組軟件的json數據處理整理成文,以低功耗模組Air780E為例,一一展示出來:
    的頭像 發表于 11-12 12:17 ?465次閱讀

    遠程IO控制器ZLAN6808-3 使用JSON定時下發執行DO通斷

    的成本。遠程IO控制器在很多場景中作為代替PLC運行,但是遠程IO控制器有無法內部編程的缺點,而卓嵐6808-3/-5-8等支持JSON定時下發串口指令控制從而實現DO繼電器通斷,大大增加了產品實用性
    的頭像 發表于 10-28 09:38 ?625次閱讀
    遠程IO控制器ZLAN6808-3 使用<b class='flag-5'>JSON</b>定時下發執行DO通斷

    JSON協議是什么,物聯網中的RTU中如何使用JSON協議和服務器交互

    理想的數據交換語言。 JSON之所以受歡迎,主要是因為它仍然使用 JavaScript 語法來描述數據對象,并沒有改變開發人員的使用習慣,
    的頭像 發表于 09-25 16:14 ?2056次閱讀
    <b class='flag-5'>JSON</b>協議是什么,物聯網中的RTU中如何使用<b class='flag-5'>JSON</b>協議和服務器交互

    TestStand表達式中常用的語法規則和運算符使用

    TestStand也有自己的語言嘛?在回答這個問題之前大家可以想一下在使用TestStand時有一個和語言密切相關的屬性。沒錯那就是表達式(Expressions),在這篇文章中,小編將以Q&A的方式來帶著大家來理解并熟悉TestStand表達式中較為常用的一些語法規則以及運算符使用。
    的頭像 發表于 08-15 18:10 ?3242次閱讀
    TestStand表達式中常用的<b class='flag-5'>語法規則</b>和運算符使用

    可以使用JSON將prov-config參數從網頁發送到esp8266嗎?

    請求。所以另一個意識形態。為什么不在Protocomm之外制作另一個簡單的httpd/task來監聽GET請求呢?而且它不起作用 我該怎么辦,我該怎么辦?請。 其他問題。我可以使用 JSON 將 prov-config 參數從網頁發送到 esp8266 嗎?
    發表于 07-09 07:41

    鴻蒙開發Ability Kit程序框架服務:FA模型切換Stage模型指導 module的切換

    從FA模型切換到Stage模型時,開發者需要將config.json文件module標簽下的配置遷移到module.json5配置文件module標簽下,具體差異見下列表格。
    的頭像 發表于 06-27 14:16 ?854次閱讀
    鴻蒙開發Ability Kit程序框架服務:FA模型切換Stage模型指導 module的切換

    鴻蒙開發Ability Kit程序框架服務:FA模型切換Stage模型指導 配置文件差異

    FA模型應用在[config.json文件]中描述應用的基本信息,一個應用工程中可以創建多個Module,每個Module中都有一份config.json文件。config.json由app
    的頭像 發表于 06-27 09:50 ?997次閱讀
    鴻蒙開發Ability Kit程序框架服務:FA模型切換Stage模型指導 配置文件差異

    http讀取百度返回的json數據時丟失數據怎么處理?

    我在使用百度ai開放平臺的語音識別功能,讀取返回的數據時,使用esp_http_client_read(client, http_data, 1024);讀到的數據里沒有json的數據,還是http
    發表于 06-24 07:00

    espidf組件是否有json組包或者messagePack的庫文件?

    espidf組件是否有json組包或者messagePack的庫文件
    發表于 06-21 07:10
    主站蜘蛛池模板: 免费一级欧美片在线观看 | 天堂精品视频 | 性欧美性 | 日日噜夜夜噜 | 欧美最猛黑人xxxx黑人猛交69 | 免费看污视频软件 | 91伊人网| 久久精品国产免费 | 美女扒开尿口让男生添 漫画 | 国产精品一区在线观看你懂的 | 日本视频网站在线www色 | 中文字幕色网站 | 在线观看www日本免费网站 | 狠狠的日视频 | 四虎成人免费影院网址 | 亚洲欧美日韩国产一区二区三区精品 | 亚洲综合激情六月婷婷在线观看 | 日韩一区二区三区在线 | 亚洲高清中文字幕一区二区三区 | 久久午夜免费视频 | 日本欧美一区二区三区免费不卡 | 男女交性特一级 | 亚洲精品成人a | aaaa大片| 深夜视频在线观看免费 | 亚1州区2区3区4区产品乱码 | 久草毛片 | 99香蕉国产 | 色五月婷婷成人网 | 日本黄色高清视频 | 天天干亚洲 | 久久久免费视频观看 | 天天操91| 黄网站色视频免费观看 | 极品吹潮视频大喷潮tv | 成人a毛片视频免费看 | 一级特黄aa毛片免费观看 | 成视频年人黄网站免费视频 | 欧美一级特黄乱妇高清视频 | 天天干在线影院 | 玖玖草在线观看 |