我想弄清楚,如果我JSON.Stringify這樣的對象:JavaScript對象數據抽取(JSON字符串化/解析或沒有?)
{"m_id":"xxx","record":
{"USER":"yyy","PWD","zzz","_createdAt":
11111."_updatedAt":00000},"state":"valid"}
,然後嘗試JSON.Parse出只有用戶和PWD,不必只是調用對象,而是通過stringify。這將如何工作?
謝謝。
我想弄清楚,如果我JSON.Stringify這樣的對象:JavaScript對象數據抽取(JSON字符串化/解析或沒有?)
{"m_id":"xxx","record":
{"USER":"yyy","PWD","zzz","_createdAt":
11111."_updatedAt":00000},"state":"valid"}
,然後嘗試JSON.Parse出只有用戶和PWD,不必只是調用對象,而是通過stringify。這將如何工作?
謝謝。
我不確定你爲什麼在討論將對象串化的問題。如果您需要通過網絡或其他方式發送數據,則需要將其串聯起來,而不是在需要使用JS進行操作時。
...我怎麼提取
{...USER: "aaa", PWD: "zzz"...}
琴絃?
假設你有一個變量引用的對象,類似如下(有或沒有很好的換行符和縮進,使之可讀,帶或不帶周圍的屬性名稱引號):
var obj = {
"m_id": "xxx",
"record": {
"USER": "yyy",
"PWD" : "zzz",
"_createdAt": 11111,
"_updatedAt": 00000
},
"state": "valid"
};
然後你可以在嵌套record
對象訪問屬性如下:
console.log(obj.record.USER); // outputs "yyy"
console.log(obj.record.PWD); // outputs "zzz"
// etc.
(注:在你的問題,你有兩個錯別字,一個逗號應在0之間已經是一個冒號和"zzz"
,以及一個在和"_updatedAt"
之間的逗號。有沒有辦法,JSON.stringify()
將產生你與那些錯誤顯示的字符串。)
我想你是對的,但我試圖避免使用..編輯上面的問題。 –
如果你的要求是提取''yyy''和''zzz''值,那麼我所顯示的方法就是正確的_和簡單的方法。我不明白你爲什麼要按照你更新的問題措辭「去串聯」,這是沒有道理的。使用對象可以直接訪問屬性。用字符串表示你必須編寫代碼來解析字符串。你不能使用'JSON.parse()'來獲取單獨的部分。 – nnnnnn
如果你想字符串"USER"
,"PWD"
等作爲數組,然後使用Object.keys
。
如果你想迭代他們,只需使用正常的for
-in
enumeration。
我可能誤解了這個問題,但如果我認爲這是什麼,然後嘗試使用
var tmp = JSON.parse(string_to_convert)
這應該足以將字符串轉換到一個適當的JavaScript對象
然後,你可以做
for(var index in tmp){
console.log(tmp[index]);
}
這應該列出第一組屬性中的所有鍵。如果你想做一個嵌套的事情,那麼在屬性上使用遞歸。希望這是有道理的...
這是不是一目瞭然你問這裏。 – Pointy
你想扭轉JSON.stringify? –
你想做什麼? –