Τι είναι οι λεκτικές προτάσεις και ποιος είναι ο σκοπός τους;
sobes.tech AI
Απάντηση από AI
Οι λεκτικές προτύπων (template literals), γνωστές και ως λεκτικές συμβολοσειρές, είναι μια σύνταξη ζάχαρης στη JavaScript που επιτρέπει την ενσωμάτωση εκφράσεων σε συμβολοσειρές χρησιμοποιώντας ανάποδα ερωτηματικά (``).
Χρησιμοποιούνται για:
-
Πιο άνετη διασταύρωση μεταβλητών και εκφράσεων σε συμβολοσειρές:
const name = "Κόσμε"; const greeting = `Γειά σου, ${name}!`; // Ενσωμάτωση μεταβλητής console.log(greeting); // Γειά σου, Κόσμε! const sum = 2 + 3; const result = `Άθροισμα: ${sum}.`; // Ενσωμάτωση έκφρασης console.log(result); // Άθροισμα: 5. -
Δημιουργία πολλαπλών γραμμών χωρίς τη χρήση του χαρακτήρα αλλαγής γραμμής (
\n):const multilineString = ` Αυτό είναι μια πολλαπλή γραμμή. `; console.log(multilineString); -
Κατασκευή σύνθετων εκφράσεων συμβολοσειρών, όπως διαδρομές αρχείων ή ερωτήματα SQL, με μεγαλύτερη αναγνωσιμότητα:
const userId = 123; const query = `SELECT * FROM users WHERE id = ${userId}`; console.log(query); -
Χρήση ετικετών προτύπων (tagged templates) για επεκταμένη λειτουργικότητα: Τα ετικετά προτύπων επιτρέπουν την κλήση μιας συνάρτησης με ένα λεκτικό πρότυπο. Το πρώτο όρισμα της συνάρτησης είναι ένας πίνακας τμημάτων συμβολοσειρών, και τα επόμενα ορίσματα είναι οι τιμές των ενσωματωμένων εκφράσεων.
function highlight(strings, ...values) { let str = ''; strings.forEach((string, i) => { str += string; if (values[i]) { str += `<b>${values[i]}</b>`; // Για παράδειγμα, έντονη γραφή } }); return str; } const user = "Frontend"; const role = "προγραμματιστής"; const message = highlight`Γειά σου, ${user}! Είσαι ένας ${role}.`; console.log(message); // Γειά σου, <b>Frontend</b>! Είσαι ένας <b>προγραμματιστής</b>.
Έτσι, οι λεκτικές προτύπων κάνουν τη δουλειά με συμβολοσειρές στη JavaScript πιο ευέλικτη, κατανοητή και αποφεύγουν τις δυσκολίες που σχετίζονται με τη σύνδεση συμβολοσειρών με το σύμβολο +.