TypeScriptда маълумотлар устида амаллар
TypeScript, қатъий турлаштирилган бошқа тиллардан фарқли ўларок, турли хил маълумот турлари устида амалларни бажаришига имкон беради, уларни битта умумий турга айлантирмай.
Келгила, мисолда нимани назарда тутилганини кўрамиз. Бизда сатр ва рақамли ўзгарувчилар мавжуд деб фараз қилайлик:
let test1: number = 123;
let test2: string = 'abc';
Келгила, ушбу ўзгарувчиларни қўшиш амалини бажарамиз:
console.log(test1 + test2); // '123abc' чиқаради
Яъни, масалан, сатр ва рақамларни қўшish мумкин, ва бу хатоликка олиб келмайди. Яъни 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);