angular - Konverter et objekt til en array i angular2/typescript
Er ny med Angular og TypeScript, og jeg har denne funksjonen
onSetValues(user){ //user is an object
console.log(user);
}
Konsollen.log ovenfor returnerer et objekt av formen
role:"administrator"
status:10
tries:2
Jeg vil gjerne gjøre dette om til et array slik at jeg kan løkke gjennom dem som
for(var i=0; i<array.length; i++){
//do m stuff here
}
Hvordan konverterer jeg dette
Jeg har sjekket denne lenken, men den tilbyr ikke hjelp i Angular2/TypeScript
Jeg har også prøvd
console.log(user| {}) //also fails
Svar #1
Hvis du virkelig vil konvertere objektverdiene dine til en matrise... må du gjøre dette.
let user = {
role:"administrator",
status:10,
tries:2,
};
let arr = [];
for(let key in user){
if(user.hasOwnProperty(key)){
arr.push(user[key]);
}
}
console.log(arr);
Resultat fra console.log
0:"administrator" 1:10 2:2
Svar #2
Du kan lage et grensesnitt med egenskapene,
interface user{
role: string;
status: string;
tries: number;
}
Lag et array inne i appkomponenten,
users: user[] = [];
Og så kan du legge til brukerobjektet og lage det som et array,
this.users.push(user);
