json的鍵值對(duì)的key為什么要引號(hào)?
JSON對(duì)于開發(fā)人員而言一點(diǎn)也不陌生,雖說(shuō)我們經(jīng)常接觸JSON,但是大家真的了解JSON嗎?我看未必,很多同學(xué)經(jīng)常搞不清楚JSON的Key到底要不要用雙引號(hào)括起來(lái),感覺(jué)在某些場(chǎng)景下JSON的Key加不加雙引號(hào)似乎都不影響使用。其實(shí),事情并非這么簡(jiǎn)單。
JSON規(guī)范JSON它是一種輕量級(jí)的數(shù)據(jù)交換格式,它是Key/Value鍵值對(duì)形式出現(xiàn)的,更多用于數(shù)據(jù)交換場(chǎng)景,它相當(dāng)?shù)暮?jiǎn)潔明了。
它的語(yǔ)法規(guī)則是:
花括號(hào)表示對(duì)象
方括號(hào)表示數(shù)組
數(shù)據(jù)由半角逗號(hào)分隔
鍵/值對(duì)組合中,鍵名要以雙引號(hào)("")括起來(lái),然后使用冒號(hào)(:)分隔Key和Value
JSON和JS是有關(guān)系的JSON其實(shí)是JS對(duì)象的字符串表示,通俗的說(shuō)就是用一段字符串表示JS對(duì)象的方法,JSON本質(zhì)上就是一個(gè)字符串。
1、我們看下JS對(duì)象是什么樣的,如下代碼:
var obj={name:'張三',age:20};JS對(duì)象中的字面量(比如上面代碼中的name和age)可以不用雙引號(hào)括起來(lái)。
2、JSON只是字符串,如下代碼:
var json='{"name":"張三","age":20}';綜上,JSON語(yǔ)法規(guī)定了Key必須要用雙引號(hào)括起來(lái),我們?nèi)粘T贘S中使用的看上去像JSON的Key沒(méi)有加雙引號(hào)是因?yàn)樗荍S對(duì)象字面量,而不是JSON。
以上就是我的觀點(diǎn),對(duì)于這個(gè)問(wèn)題大家是怎么看待的呢?歡迎在下方評(píng)論區(qū)交流 ~ 我是科技領(lǐng)域創(chuàng)作者,十年互聯(lián)網(wǎng)從業(yè)經(jīng)驗(yàn),歡迎關(guān)注我了解更多科技知識(shí)!