对于那些已经回答并阅读了我之前的问题的人,感谢是极大的。这个问题是跟进的。
现在我有以下代码段
public async personNews(serviceBranch?: string[]): Promise<INews> {
const fetchResult: IPersonNewsFetchResultEntry[] = await this._get('api/person/news/', newsSchema, true) as IPersonNewsFetchResultEntry[];
const serviceBranches: string[] =
fetchResult.filter((entry, index, array) => {
return array.findIndex(({unitID}) => entry.unitID === unitID) === index;
}).map(entry => entry.unitID);
我希望将serviceBranch包含在我的过滤器中,以使新创建的数组中的元素将serviceBranch参数放在顶部或自己选择的位置。因此,举例来说,现在我的数组看起来像[TRY,PLO,OMO,MNY,WER,TQA,MNB]。serviceBranch参数将为WER,因此我希望我的数组为[TRY,WER,OMO,MNY等...]最重要的部分是将该元素移至顶部3。
对我来说,达到此结果的最佳方法是什么。我一直在寻找排序功能,但我读过的书都没有给我想要的结果。预先感谢。
对于那些已经回答并阅读了我之前的问题的人,感谢是极大的。这个问题是跟进的。现在我有以下摘要公共异步personNews(serviceBranch ?: ...
我不知道这是否是“最佳”方法,但是一种直接的方法是使用数组的findIndex()
方法找到您要移动的项目,然后使用findIndex()
方法两次以将元素删除并重新插入您关心的位置。这是一个可能的实现: