Arrays 角度5,如何从承诺返回数组?

Arrays 角度5,如何从承诺返回数组?,arrays,angular,promise,Arrays,Angular,Promise,我正在创建一个数组,在它被创建之后,数组被解析为一个对象。 但是,由于我需要在解析后根据特定值对tempArray进行排序,所以我需要将其作为数组,而不是对象。 还因为在排序之后,我使用:*ngFor显示它。 还是对对象进行排序而不是将其更改回数组更好 返回的承诺的console.log显示在下面 var tempArray=[] 返回新承诺((解决、拒绝)=>{ 让错误=错误; var i=0; for(数组首的let键){ tempArray[i]={ “_id”:键。_id, “post

我正在创建一个数组,在它被创建之后,数组被解析为一个对象。 但是,由于我需要在解析后根据特定值对tempArray进行排序,所以我需要将其作为数组,而不是对象。 还因为在排序之后,我使用:*ngFor显示它。 还是对对象进行排序而不是将其更改回数组更好

返回的承诺的console.log显示在下面

var tempArray=[]
返回新承诺((解决、拒绝)=>{
让错误=错误;
var i=0;
for(数组首的let键){
tempArray[i]={
“_id”:键。_id,
“postPub”:key.postPub,
“timepass”:this.timepasspublix
}
我++
}
如果(错误){
拒绝('错误')
}否则{
解析(临时数组)
}

});您可以将其作为数组返回,无需对象:

var承诺=新承诺((解决、拒绝)=>{
解决([1,2,3,4,5]);
});
//拒绝范例
var promise2=新承诺((解决、拒绝)=>{
var数组=[];
如果(array.length==0)
拒绝(“错误”);
其他的
解析(数组);
});
然后(data=>console.log(data));
promise2.then(数据=>console.log(数据))

.catch(错误=>console.log(错误))它是Promise.resolve(数组)。不需要承诺构造功能。@estus你是对的,我的例子可能就是这样,但是在问题中,他们似乎希望在承诺中进行某种错误检查。我们什么时候检查拒绝,你能举个例子吗?您的解决方案有效。@oudekaas添加了一个产生错误的示例。