![](/img/trans.png)
[英]Javascript - transform array of javascript objects into a sorted key/value javascript object
[英]Recursively transform a JSON object to an array of key/value in JavaScript
無論 JSON 的深度如何,如何將 JSON 轉換為 JS 中的屬性數組?
JSON
{
"foo": {
"bar": {
"baz": "UP"
}
}
}
鍵/值屬性
{
"foo.bar.baz": "UP"
}
我當前的代碼只處理一個級別,而不是 n:
var user = {name: 'Corbin', age: 20, location: 'USA'},
key;
for (key in user) {
if (user.hasOwnProperty(key)) {
console.log(key + " = " + user[key]);
}
}
謝謝:D
基本上,如果成員是對象,則進行遞歸調用,否則,更新輸出對象:
data = { foo: "hello", bar: { baz: { qux: "UP" }, spam: 'ham' } } function unwrap(obj, prefix) { var res = {}; for (var k of Object.keys(obj)) { var val = obj[k], key = prefix ? prefix + '.' + k : k; if (typeof val === 'object') Object.assign(res, unwrap(val, key)); // <-- recursion else res[key] = val; } return res; } console.log(unwrap(data))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.