0
我是新來的node.js(比如,這是第二天)。我編寫了一個腳本,它讀取包含用戶列表的JSON文件,解析它們,然後將每個用戶添加到由usedrname鍵入的字典中。由於我很新,所以我想知道是否有比我提出的更優雅或現成的解決方案。將對象列表添加到帶有node.js的字典中的通用方法
想我讀了一個名爲/users.json
文件,其中包含:
{
"user1": {
"first": "Tom",
"last": "Hanks",
"job-description": "Movie star"
},
"user2": {
"first": "Dick",
"last": "Trickle",
"job-description": "Bar mitzvah entertainer"
},
"user3": {
"first": "Harry",
"last": "Houdini",
"job-description": "Escapologist"
}
}
而我的代碼來創建用戶詞典看起來是這樣的:
const fs = require('fs')
var users = fs.readFile(__dirname + '/users.json', 'utf8', (err, users) => {
users = JSON.parse(users)
var userDictionary = toDictionary(users)
console.log('user dictionary', JSON.stringify(userDictionary, null, 4))
}
function toDictionary(objects)
var dict = {}
Object.keys(objects).forEach((key, object) => {
if (objects.hasOwnProperty(key)) {
dict[key] = objects[key] // copy whole element to dictionary
}
})
return dict
}
這將產生控制檯上的以下:
user dictionary {
"user1": {
"first": "Tom",
"last": "Hanks",
"job-description": "Movie star"
},
"user2": {
"first": "Dick",
"last": "Trickle",
"job-description": "Bar mitzvah entertainer"
},
"user3": {
"first": "Harry",
"last": "Houdini",
"job-description": "Escapologist"
}
}
就像我說的,我的代碼產生我想要的結果b這是實現它們的最佳方式嗎?提前致謝!
這就是我需要的那種反饋,謝謝! – Moebius