Амалиётҳо бар рӯи додаҳо дар TypeScript
TypeScript, бар хилофи дигар забонҳои барномасозӣ бо навъбандии қатъӣ, имкон медиҳад, ки амалиётҳоро ба рӯи навъҳои гуногуни додаҳо иҷро кардан, бе он ки онҳоро ба як навъи умумӣ табдил диҳед.
Биёед ба мисол назар кунем, ки чӣ маънӣ дорад. Бигзор мо тағйирёбандаҳои сатрӣ ва ададӣ дорем:
let test1: number = 123;
let test2: string = 'abc';
Биёед ҷамъкунии ин тағйирёбандаҳоро иҷро кунем:
console.log(test1 + test2); // '123abc'-ро хориҷ мекунад
Яъне, масалан, метавон сатрҳо ва ададҳоро ҷамъ кард, ва ин боиси хатӣ намешавад. Яъне TypeScript фақат барои ин назорат мекунад, ки барномасоз навъи додаҳои тағйирёбандаро тағйир надиҳад.
Барои мисол, дар рамзи зерин мо кӯшиш мекунем, ки сатрро дар тағйирёбандаи ададӣ сабт кунем ва ин аллакай боиси хатӣ мешавад:
let test1: number = 123;
let test2: string = 'abc';
let test3: number;
test3 = test1 + test2; // кӯшиш мекунем сатрро сабт кунем
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: number = 123;
let test2: number = 456;
console.log(test1 + test2);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: string = '123';
let test2: string = '456';
console.log(test1 + test2);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: string = '123';
let test2: string = '456';
let test3: number = test1 + test2;
console.log(test3);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: number = 123;
let test2: number = 456;
let test3: string = test1 + test2;
console.log(test3);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: number = 123;
let test2: number = 456;
let test3: string = test1 + ' ' + test2;
console.log(test3);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: number = 123;
let test2: number = 456;
let test3: string = '!';
let test4: string = test1 + test2 + test3;
console.log(test4);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: number = '123';
let test2: number = '456';
console.log(test1 + test2);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test1: number = +'123';
let test2: number = +'456';
console.log(test1 + test2);
Бе оғози код муайян кунед, ки натиҷаи иҷрои рамз чӣ хоҳад буд:
let test: string = '1';
test += 1;
console.log(test);