การดำเนินการกับข้อมูลใน TypeScript

TypeScript ต่างจากภาษาที่มีระบบชนิดข้อมูลเข้มงวดอื่น ๆ ตรงที่อนุญาตให้ดำเนินการกับข้อมูลประเภทต่าง ๆ ได้ โดยไม่ต้องแปลงเป็นประเภทเดียวกันก่อน

มาดูตัวอย่างเพื่อให้เข้าใจสิ่งที่กล่าวถึงกัน ให้เรามีตัวแปรที่เป็นสตริงและตัวเลข:

typescriptlet test1: number = 123;
let test2: string = 'abc';

ลองบวกตัวแปรสองตัวนี้ดู:

typescriptconsole.log(test1 + test2); // จะแสดงผล '123abc'

นั่นคือคุณสามารถบวก เช่น สตริงและตัวเลขได้ และสิ่งนี้จะไม่ทำให้เกิดข้อผิดพลาด นั่นคือ TypeScript จะตรวจสอบเพียงว่าโปรแกรมเมอร์ไม่ได้เปลี่ยนแปลงชนิดข้อมูลของตัวแปร

สำหรับตัวอย่าง ในโค้ดต่อไปนี้เราจะพยายามกำหนดสตริงลงในตัวแปรตัวเลข และสิ่งนี้จะทำให้เกิดข้อผิดพลาด:

typescriptlet test1: number = 123;
let test2: string = 'abc';
let test3: number;

test3 = test1 + test2; // พยายามกำหนดสตริง
Задание 1

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: number = 123;
let test2: number = 456;

console.log(test1 + test2);
Задание 2

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: string = '123';
let test2: string = '456';

console.log(test1 + test2);
Задание 3

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: string = '123';
let test2: string = '456';

let test3: number = test1 + test2;
console.log(test3);
Задание 4

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: number = 123;
let test2: number = 456;

let test3: string = test1 + test2;
console.log(test3);
Задание 5

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: number = 123;
let test2: number = 456;

let test3: string = test1 + ' ' + test2;
console.log(test3);
Задание 6

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: number = 123;
let test2: number = 456;
let test3: string = '!';

let test4: string = test1 + test2 + test3;
console.log(test4);
Задание 7

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: number = '123';
let test2: number = '456';

console.log(test1 + test2);
Задание 8

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test1: number = +'123';
let test2: number = +'456';

console.log(test1 + test2);
Задание 9

โดยไม่ต้องรันโค้ด จงกำหนดว่าผลลัพธ์ของการทำงานโค้ดจะเป็นอย่างไร:

typescriptlet test: string = '1';
test += 1;

console.log(test);