TypeScript-da ma'lumotlar ustida amallar
TypeScript, qat'iy tipizatsiyaga ega bo'lgan boshqa tillardan farqli o'laroq, ma'lumotlarning turli turlari ustida ularni umumiy bir turga o'zgartirmasdan amallarni bajarishga imkon beradi.
Keling, misol orqali nimani nazarda tutayotganimizni ko'rib chiqaylik. Faraz qilaylik, bizda string va raqamli o'zgaruvchilar mavjud:
let test1: number = 123;
let test2: string = 'abc';
Keling, ushbu o'zgaruvchilarni qo'shish amalini bajaramiz:
console.log(test1 + test2); // chiqadi '123abc'
Ya'ni, masalan, string va raqamlarni qo'shish mumkin va bu xatolikka olib kelmaydi. Ya'ni TypeScript faqat dasturchi o'zgaruvchining ma'lumot turini o'zgartirmasligini ta'minlaydi.
Misol sifatida, quyidagi kodda biz stringni raqamli o'zgaruvchiga yozishga harakat qilamiz va bu allaqachon xatolikka olib keladi:
let test1: number = 123;
let test2: string = 'abc';
let test3: number;
test3 = test1 + test2; // string yozishga harakat qilamiz
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: number = 123;
let test2: number = 456;
console.log(test1 + test2);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: string = '123';
let test2: string = '456';
console.log(test1 + test2);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: string = '123';
let test2: string = '456';
let test3: number = test1 + test2;
console.log(test3);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: number = 123;
let test2: number = 456;
let test3: string = test1 + test2;
console.log(test3);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: number = 123;
let test2: number = 456;
let test3: string = test1 + ' ' + test2;
console.log(test3);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: number = 123;
let test2: number = 456;
let test3: string = '!';
let test4: string = test1 + test2 + test3;
console.log(test4);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: number = '123';
let test2: number = '456';
console.log(test1 + test2);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test1: number = +'123';
let test2: number = +'456';
console.log(test1 + test2);
Kodni ishlamasdan, quyidagi kodni bajarish natijasi qanday bo'lishini aniqlang:
let test: string = '1';
test += 1;
console.log(test);