JavaScript ECMAScript 2018


Πίνακας περιεχομένων

    Εμφάνιση πίνακα περιεχομένων

Αριθμοί έκδοσης JavaScript

Οι παλιές εκδόσεις JS ονομάζονται με αριθμούς: ES5 (2009) και ES6 (2015).

Από το 2016, οι εκδόσεις ονομάζονται ανά έτος: ECMAScript 2016, 2017, 2018, 2019, ...

Νέες δυνατότητες στο ECMAScript 2018

Αυτό το κεφάλαιο εισάγει τις νέες δυνατότητες στο ECMAScript 2018:

  • Ασύγχρονη Επανάληψη

  • Υπόσχεση Τέλος

  • Ιδιότητες ανάπαυσης αντικειμένου

  • Νέες δυνατότητες RegExp

  • Κοινόχρηστη μνήμη JavaScript


Ασύγχρονη επανάληψη JavaScript

Το ECMAScript 2018 πρόσθεσε ασύγχρονους επαναλήπτες και επαναληπτικούς.

Με ασύγχρονους επαναληπτικούς, μπορούμε να χρησιμοποιήσουμε το αναμονή λέξη-κλειδί σε βρόχους για/από.

Παράδειγμα

for await () {}

Η ασύγχρονη επανάληψη JavaScript υποστηρίζεται σε όλα τα σύγχρονα προγράμματα περιήγησης από τον Ιανουάριο του 2020:

Chrome 63 Edge 79 Firefox 57 Safari 11 Opera 50
Dec 2017 Jan 2020 Nov 2017 Sep 2017 Jan 2018

JavaScript Promise.τελικά

Το ECMAScript 2018 ολοκληρώνει την πλήρη υλοποίηση του αντικειμένου Promise με το Promise.finally:

Παράδειγμα

let myPromise = new Promise();

myPromise.then();
myPromise.catch();
myPromise.finally();

Το Promise.finally υποστηρίζεται σε όλα τα σύγχρονα προγράμματα περιήγησης από τον Νοέμβριο του 2018:

Chrome 63 Edge 18 Firefox 58 Safari 11.1 Opera 50
Dec 2017 Nov 2018 Jan 2018 Mar 2018 Jan 2018


Ιδιότητες ανάπαυσης αντικειμένων JavaScript

Το ECMAScript 2018 πρόσθεσε ιδιότητες ανάπαυσης.

Αυτό μας επιτρέπει να καταστρέψουμε ένα αντικείμενο και να συλλέξουμε τα υπολείμματα σε ένα νέο αντικείμενο:

Παράδειγμα

let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 };
x; // 1
y; // 2
z; // { a: 3, b: 4 }

Οι ιδιότητες ανάπαυσης αντικειμένων υποστηρίζονται σε όλα τα σύγχρονα προγράμματα περιήγησης από τον Ιανουάριο του 2020:

Chrome 60 Edge 79 Firefox 55 Safari 11.1 Opera 47
Jul 2017 Jan 2020 Aug 2017 Mar 2018 Aug 2017

Νέες δυνατότητες JavaScript RegExp

Το ECMAScript 2018 πρόσθεσε 4 νέες δυνατότητες RegExp:

  • Unicode Property Escapes (\p{...})

  • Lookbehind Assertions (?<= ) και (?

  • Ονομασμένες ομάδες λήψης

  • s (dotAll) Σημαία

Οι νέες δυνατότητες RegExp υποστηρίζονται σε όλα τα σύγχρονα προγράμματα περιήγησης από τον Ιούνιο του 2020:

Chrome 64 Edge 79 Firefox 78 Safari 12 Opera 51
Jan 2018 Jan 2020 Jun 2020 Sep 2018 Feb 2018

Νήματα JavaScript

Στο JavaScript χρησιμοποιείτε το Web Workers API για να δημιουργήσετε νήματα.

Τα νήματα Worker χρησιμοποιούνται για την εκτέλεση κώδικα στο παρασκήνιο, έτσι ώστε το κύριο πρόγραμμα να μπορεί να συνεχίσει την εκτέλεση.

Τα νήματα εργασίας εκτελούνται ταυτόχρονα με το κύριο πρόγραμμα. Ταυτόχρονη εκτέλεση διαφορετικών τμημάτων ενός προγράμματος μπορεί να εξοικονομήσει χρόνο.

Κοινόχρηστη μνήμη JavaScript

Η κοινόχρηστη μνήμη είναι μια δυνατότητα που επιτρέπει σε νήματα (διαφορετικά μέρη ενός προγράμματος). πρόσβαση και ενημέρωση των ίδιων δεδομένων στην ίδια μνήμη.

Αντί να μεταβιβάζετε δεδομένα μεταξύ νημάτων, μπορείτε να περάσετε ένα αντικείμενο SharedArrayBuffer που δείχνει στη μνήμη όπου αποθηκεύονται τα δεδομένα.

SharedArrayBuffer

Ένα αντικείμενο SharedArrayBuffer αντιπροσωπεύει μια προσωρινή μνήμη ακατέργαστων δυαδικών δεδομένων σταθερού μήκους παρόμοια με το αντικείμενο ArrayBuffer.