我有一个平面的CSV文件,我需要阅读,最后有3个区域,国家,城市的选择框。
我正在使用jQuery加载csv文件,并使用jQuery Csv插件将csv文件作为数组返回。
我已遍历数组并构建了一系列国家/地区,但现在我正在努力将城市添加到数组中。什么结构最好?理想情况下,我只想循环遍历csv一次,最后得到一个嵌套数组,其中包含区域,然后是十个城市。
这是关联数组的情况吗?
感谢您的帮助。
伊恩。
答案 0 :(得分:1)
是的,关联数组就可以了,就像这样:
var data = [
['europe', 'belgium', 'brussels'],
['europe', 'france', 'paris'],
['europe', 'france', 'lyon'],
['americas', 'usa', 'washington'],
['americas', 'usa', 'new-york'],
['americas', 'chile', 'santiago']
];
var tree = {},
l = data.length,
region, country;
while(l--){
region = data[l][0];
country = data[l][1];
tree[region] = tree[region] || {};
tree[region][country] = tree[region][country] || [];
tree[region][country].push( data[l][2] );
}
console.log(tree);