国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

NPM酷庫(kù)044:json5,更可讀的JSON

Flink_China / 3290人閱讀

摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。是一個(gè)格式的擴(kuò)展,目的是能夠讓人類更容易讀寫數(shù)據(jù)文件。只是一個(gè)第三方的庫(kù),并非格式的繼任者。相對(duì)于,有如下各個(gè)方面優(yōu)勢(shì)。

NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。·

JSON是JS中數(shù)據(jù)交換時(shí)最常用的數(shù)據(jù)格式,其序列話和反序列化性能非常好,但是其語(yǔ)法卻比較嚴(yán)格,比如以下是一個(gè)合法的JS聲明,卻不是一個(gè)合法的JSON:

{ foo: "bar" }

JSON格式強(qiáng)制要求對(duì)象key必須以雙引號(hào)包含,字符串也必須使用雙引號(hào),等等。

如果我們只是調(diào)用 JSON.stringify()JSON.parse() 來(lái)進(jìn)行數(shù)據(jù)的處理,那么也沒(méi)什么關(guān)系,但是如果我們需要手寫JSON,比如寫配置文件或數(shù)據(jù)模式定義,那么嚴(yán)格的JSON語(yǔ)法檢查會(huì)給編碼帶來(lái)很多不便。

JSON5

JSON5 是一個(gè)JSON格式的擴(kuò)展,目的是能夠讓人類更容易讀寫數(shù)據(jù)文件。JSON5只是一個(gè)第三方的庫(kù),并非JSON格式的繼任者。JSON5相對(duì)于JSON,有如下各個(gè)方面優(yōu)勢(shì)。

對(duì)象

屬性key可以不用引號(hào)包含

屬性key可以用單引號(hào)包含

可以有尾部多余逗號(hào)

數(shù)組

可以有尾部多余逗號(hào)

字符串

可以以單引號(hào)包含

支持多行字符串

數(shù)字

可以以16進(jìn)制表示

可以以小數(shù)點(diǎn)開頭或結(jié)尾

支持 Infinity, -Infinity, NaN, 和 -NaN.

可以顯式聲明正號(hào) +

注釋

允許當(dāng)行和多行注釋

如下就是一個(gè)合法的JSON5格式文件:

{
    foo: "bar",
    while: true,

    this: "is a 
multi-line string",

    // this is an inline comment
    here: "is another", // inline comment

    /* this is a block comment
       that continues on another line */

    hex: 0xDEADbeef,
    half: .5,
    delta: +10,
    to: Infinity,   // and beyond!

    finally: "a trailing comma",
    oh: [
        "we shouldn"t forget",
        "arrays can have",
        "trailing commas too",
    ],
}

處理JSON5數(shù)據(jù):

const JSON5 = require("json5");

let obj = JSON5.parse("{unquoted:"key",trailing:"comma",}");
let str = JSON5.stringify(obj);
參考資料

https://github.com/json5/json5

http://json5.org

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/107539.html

相關(guān)文章

  • NPM酷庫(kù)045:js-yaml,讀寫YAML

    摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。在酷庫(kù)中,我們了解到了相對(duì)于格式更加易于編寫和維護(hù)的,今天我們繼續(xù)學(xué)習(xí)另外一個(gè)更加簡(jiǎn)單易讀的數(shù)據(jù)格式。是一個(gè)專門用來(lái)讀寫格式數(shù)據(jù)的庫(kù),他可以將對(duì)象轉(zhuǎn)換成字符串,也可以將字符串轉(zhuǎn)換為對(duì)象。 NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。· 在NPM酷庫(kù)044中,我們了解到了相對(duì)于JSON格式更加易于編寫和維護(hù)的JSON5,今天我們繼續(xù)學(xué)習(xí)另外一個(gè)更加簡(jiǎn)單...

    jsummer 評(píng)論0 收藏0
  • NPM酷庫(kù)046:cson-parser,解析CSON數(shù)據(jù)

    摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。前兩期我們分別介紹了和,這兩種數(shù)據(jù)格式相對(duì)于,更加易于人類編寫和理解,今天我們繼續(xù)介紹另外一個(gè)容易編寫的格式。 NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。· 前兩期我們分別介紹了JSON5和YAML,這兩種數(shù)據(jù)格式相對(duì)于JSON,更加易于人類編寫和理解,今天我們繼續(xù)介紹另外一個(gè)容易編寫的格式 CSON。 CSON格式全稱是 CoffeeScript...

    BigNerdCoding 評(píng)論0 收藏0
  • NPM酷庫(kù)047:ini,解析INI配置文件

    摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。下方就是一個(gè)類型的配置文件庫(kù)在中,我們使用庫(kù)來(lái)解析文件參考資料 NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。· 最近幾期我們都在研究各種數(shù)據(jù)文件類型,包括JSON5、YAML、CSON等,相對(duì)于JSON,這些格式能夠更加易于人類編寫和理解,所以更適合做配置文件,今天我們繼續(xù)學(xué)習(xí)如何解析Windows系統(tǒng)上常用的*.ini配置文件。 下方就是一個(gè)INI...

    flyer_dev 評(píng)論0 收藏0
  • NPM酷庫(kù)050:xmlbuilder,創(chuàng)建XML文件

    摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。在前幾期酷庫(kù)中,我們介紹了操作等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會(huì)經(jīng)常遇到格式的接口協(xié)議。本期,我們先來(lái)了解,用來(lái)創(chuàng)建格式文檔。 NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。· 在前幾期NPM酷庫(kù)中,我們介紹了Node.js操作JSON5、YAML、CSON、CSV等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會(huì)經(jīng)常遇到XML格式的接口協(xié)議。從本期開...

    baukh789 評(píng)論0 收藏0
  • NPM酷庫(kù)050:xmlbuilder,創(chuàng)建XML文件

    摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。在前幾期酷庫(kù)中,我們介紹了操作等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會(huì)經(jīng)常遇到格式的接口協(xié)議。本期,我們先來(lái)了解,用來(lái)創(chuàng)建格式文檔。 NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。· 在前幾期NPM酷庫(kù)中,我們介紹了Node.js操作JSON5、YAML、CSON、CSV等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會(huì)經(jīng)常遇到XML格式的接口協(xié)議。從本期開...

    taoszu 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<