Sobes.tech
Junior

Με ποιες καινοτομίες στο ES6 είστε εξοικειωμένοι;

sobes.tech AI

Απάντηση από AI

  • let, const, var: let και const για το μπλοκ πεδίο ορατότητας, var για λειτουργικό πεδίο. const για σταθερές, let για μεταβλητές που μπορούν να επαναπροσδιοριστούν.
  • Βέλη (Arrow Functions): Συντομογραφία για δήλωση συναρτήσεων. Λεξικό this.
  • Τιμές προτύπου (Template Literals): Επιτρέπουν την ενσωμάτωση εκφράσεων και πολυγραμμικών συμβολοσειρών.
    const name = "World";
    const greeting = `Hello, ${name}!`; // "Hello, World!"
    
  • Ανάθεση αποδόμησης (Destructuring Assignment): Βολικός τρόπος εξαγωγής τιμών από πίνακες και αντικείμενα.
    const person = { firstName: "John", lastName: "Doe" };
    const { firstName, lastName } = person; // firstName = "John", lastName = "Doe"
    
  • Τελεστής spread (...) και παράμετροι rest (...): Spread για επέκταση και συγχώνευση πινάκων/αντικειμένων. Rest για συλλογή των υπόλοιπων ορισμάτων σε πίνακα.
    const arr1 = [1, 2];
    const arr2 = [...arr1, 3, 4]; // [1, 2, 3, 4]
    
    function sum(...numbers) {
      return numbers.reduce((acc, current) => acc + current, 0);
    }
    sum(1, 2, 3); // 6
    
  • Κλάσεις (Classes): Συντακτικό ζάχαρη πάνω από την πρωτοτυπική κληρονομικότητα.
    class Car {
      constructor(brand) {
        this.brand = brand;
      }
      drive() {
        console.log(`${this.brand} οδηγεί.`);
      }
    }
    
  • Μονάδες (Modules): Εργαλείο για οργάνωση κώδικα με import και export.
    // module.js
    export const PI = 3.14;
    
    // main.js
    import { PI } from './module.js';
    
  • Υποσχέσεις (Promises): Απλοποιούν τη δουλειά με ασύγχρονο κώδικα.
    new Promise((resolve, reject) => {
      // Ασύγχρονη λειτουργία
      if (success) {
        resolve("Επιτυχία!");
      } else {
        reject("Σφάλμα!");
      }
    })
    .then(result => console.log(result))
    .catch(error => console.error(error));
    
  • for...of βρόχος: Επανάληψη σε επαναληπτικά αντικείμενα.
    const arr = [1, 2, 3];
    for (const value of arr) {
      console.log(value); // 1, 2, 3
    }
    
  • Set και Map: Νέες δομές δεδομένων. Set για μοναδικές τιμές, Map για ζεύγη κλειδιού-τιμής.