まだ設定されていない構造の JSON ファイルがあります。複雑になるかもしれません。関数がデータ構造をどのように考えているかを追跡したいと思います。
関数が特定のデータ構造に接続されていることを示す標準的/スマートな方法は何ですか?
現在、 json ファイルで_commentを使用 してバージョン番号を保持し、それを使用する各関数でそのバージョン名をコメントとして保持しています。以下の完全な例。
travel.json
{
"_comment" : "version 1.0"
, "name" : "Tom Sawyer"
, "travel" : [{
"id" : "1"
, "location" : "San Francisco"
}, {
"id" : "2"
, "location" : "London"
}]
}
解析する 2 つの関数: travel.json
fs = require('fs');
function get_json() {
var file = __dirname + '/travel.json';
data = fs.readFileSync(file, 'utf8');
var json_obj = JSON.parse(data);
return(json_obj);
};
function get_location(json_obj) {
// "version 1.0"
var new_obj = {};
json_obj.content.forEach(function(item) {
new_obj[item.id] = item.location;
});
return ( new_obj );
};
// Run
console.log('Locations: ', get_location( get_json() ));
ありがとう。