2017-08-25 155 views
1

我正在構建一個應用程序,用於解析JSON模板,然後用新數據替換對象的值。我的問題是用JSON表示空數據的標準方式是什麼?什麼是空字符串或null變量的JSON標準?

這就是我現在如何處理這一權利:

  • 一個空字符串表示爲「」
  • 空INT /浮點/雙/布爾/等。被表示爲空

這是正確的嗎?

+0

設置一個空字符串就像執行一個默認值。所以,如果你這樣做,你應該爲其他類型做,int - 爲0,bool爲假等等。但是,在我看來,「空數據」應該等於null。所以在這裏你必須考慮你的數據是否應該是空的或者根本不存在,因爲你也可以在某個地方進行未定義的檢查。 –

+1

[在JSON中表示null]的可能重複(https://stackoverflow.com/questions/21120999/representing-null-in-json) –

回答

2

應該是非常簡單的。

{ 
    "Value1": null, 
    "Value2": null, 
} 

空表示爲空的數據類型使您的業務層需要後來才知道,如果這是一個int,dobule,串...

1

這完全取決於你。

JavaScript中的falsy值是:

  • false
  • null
  • undefined
  • 0
  • NaN
  • ''""

您可以使用其中的任何值來表示空值。但是,請記住,當您嘗試訪問不存在的對象屬性時,您將獲得undefined。因此undefined可以被認爲是標準的空值。

話雖如此,一個約定是使用null,以便您可以區分已故意設置爲null的屬性與實際爲undefined的屬性。

+0

'undefined'不是有效的JSON,而NaN也不是有效的JSON。 – FSMaxB

+0

你是對的,但是如果你將這些值中的任何一個傳遞給'JSON.stringify()',你總是會得到一個字符串,它是_is_有效的JSON – Simone

+0

,但JavaScript從未被提及過。 – FSMaxB

相關問題