其他分享
首页 > 其他分享> > return,想要return多个数据怎么办?return单项,若要return多项,那么就return出去一个对象

return,想要return多个数据怎么办?return单项,若要return多项,那么就return出去一个对象

作者:互联网

平常的使用中我们都是在函数中return出一个数据,
那么问题来了,遇到想要return两个,或多个数据的函数,我们应该怎么办?

demo:

/**
 * 数据格式化方法
 * @param { Array } list 
 * @returns { Object } 处理好的数据格式对象
 */
const formatCityData = (list) => {
  const cityList = {};
  list.forEach( item => {
    const first =  item.short.slice(0,1)
    if (cityList[first]) {
      cityList[first].push(item)
    } else {
      cityList[first] = [item];
    }
  })
  const cityIndex = Object.keys(cityList).sort()
  return {
    cityList,
    cityIndex
  }
}

下面是将其结构出来

async getCityList() {
    const { data: res } = await axios.get("http://localhost:8080/area/city",{
      params: {
        level: 1
      }
    })
    const {cityList,cityIndex} =  formatCityData(res.body);
    // 获取热门城市数据
    const { data: hot } = await axios.get("http://localhost:8080/area/hot");
    cityList['hot'] = hot.body;
    cityIndex.unshift('hot');
    // 获取当前定位城市
    const curCity = await getCurrentCity();
    cityList['#'] = [curCity];
    cityIndex.unshift('#');
    console.log(cityList,cityIndex)
  };
  componentDidMount() {
    this.getCityList();
  };

标签:const,cityList,若要,cityIndex,return,item,hot,单项
来源: https://blog.csdn.net/weixin_43131046/article/details/120676295