Javascript中CSV的地区、国家、城市排序

Javascript中CSV的地区、国家、城市排序,javascript,jquery,arrays,csv,Javascript,Jquery,Arrays,Csv,我有一个平面的CSV文件,我需要从中读取,以3个区域、国家、城市选择框结束 我使用jQuery加载csv文件,使用jQuery csv插件将csv文件作为数组返回 我已经在数组中循环并构建了一个国家数组,但现在正在努力将城市添加到数组中。什么结构最好?理想情况下,我只想在csv上循环一次,最后得到一个嵌套数组,其中包含区域,然后是国家和十个城市 这是关联数组的情况吗 谢谢你的帮助 伊恩。是的,关联数组适合这样做,比如: var data = [ ['europe', 'belgium',

我有一个平面的CSV文件,我需要从中读取,以3个区域、国家、城市选择框结束

我使用jQuery加载csv文件,使用jQuery csv插件将csv文件作为数组返回

我已经在数组中循环并构建了一个国家数组,但现在正在努力将城市添加到数组中。什么结构最好?理想情况下,我只想在csv上循环一次,最后得到一个嵌套数组,其中包含区域,然后是国家和十个城市

这是关联数组的情况吗

谢谢你的帮助


伊恩。

是的,关联数组适合这样做,比如:

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);

是的,关联数组可以这样做,类似这样:

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);

太棒了,这让我走上了正确的方向,谢谢麦克。太棒了,这让我走上了正确的方向,谢谢麦克。