Incompréhension Syntaxe crochet
Hello,
J'ai une incompréhension sur le code que voici :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
export interface JobData {
id: number | null;
datas: any[];
errorMsg: string | null;
}
export interface CurrentData {
zone: JobData | null;
price: JobData | null;
}
.............................................
export class truc {
currentData: CurrentData = { zone: null, price: null };
enqueue(utility: string, codeBarre: string, codeZone: string) {
let workData: JobData = this.currentData[utility] as JobData;
// to do....
} |
Plus précisement je ne comprends ps cette ligne :
Code:
1 2
|
let workData: JobData = this.currentData[utility]; |
Les crochets : je sais juste que on accède à la valeur d'un objet en faisant :
Code:
1 2 3 4 5 6
|
let obj= {
toto: "tutu"
};
let objValue = obj["toto]; |
Et qu'on peut définir une valeur d'une propriété à la volée avec la même notation :
Code:
obj["myNewProp]= "titi"
De ce que je comprends dans ce code, on ajoute une propriété "utility" à l'objet littéral "currentdata" de type CurrentData sans lui définir de valeur et on dit à TypeScript que c'est un objet de type Jobdata ?
L e fonctionnement m'échappe
Merci