Λειτουργίες σε Δεδομένα στο 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);