js 怎么把list1数组转换成list2这样的呢?

list1: [{
"letter": "A",
"cityName": "安吉",
"cityCode": "ANJ",
}, {
"letter": "B",
"cityName": "北京",
"cityCode": "PEK",
}, {
"letter": "C",
"cityName": "崇州",
"cityCode": "chongzhou",
},],

list2: {
'A': {
list: [{
"letter": "A",
"cityName": "安吉",
"cityCode": "ANJ",
},]
},
'B': {
list: [{
"letter": "B",
"cityName": "北京",
"cityCode": "PEK",
},]
},
'C': {
list: [{
"letter": "C",
"cityName": "崇州",
"cityCode": "chongzhou",
},]
},
}


let list1 = [
        {
          letter: "A",
          cityName: "安吉",
          cityCode: "ANJ",
        },
        {
          letter: "B",
          cityName: "北京",
          cityCode: "PEK",
        },
        {
          letter: "C",
          cityName: "崇州",
          cityCode: "chongzhou",
        },
      ];

      let list2 = {};
      list1.forEach(function (item) {
        list2[item.letter] = {
          list: [item],
        };
      });
      console.log("list2", list2);

1.用forEach()遍历list1,拿到每一个list1里的数据item
2.声明一个空的对象,对遍历后的每一项对行处理,然后放到空对象中