Προγραμματισμός

Εγκρίθηκε η προδιαγραφή ECMAScript 2020 για JavaScript

Το ECMAScript 2020, η τελευταία έκδοση της επίσημης προδιαγραφής που διέπει το JavaScript, εγκρίθηκε επίσημα από την ECMA International και η τεχνική επιτροπή ECMA που επιβλέπει τις προδιαγραφές, στις 16 Ιουνίου.

Το ECMAScript 2020 εισάγει πολλές δυνατότητες που κυμαίνονται από μια νέαεισαγωγή() δυνατότητα φόρτωσης ενοτήτων σε νέοBigInt τύπος για εργασία με αυθαίρετους ακέραιους αριθμούς.

Συγκεκριμένα χαρακτηριστικά που εισήγαγε το ECMAScript 2020 περιλαμβάνουν:

  • Ένα "συναρπαστικό" εισαγωγή() σύνταξη φόρτωσης μονάδας για ασύγχρονη εισαγωγή μονάδων με δυναμικό προσδιοριστή. Η πρόταση προσθέτει ένα εισαγωγή (προσδιοριστής) συντακτική μορφή, ενεργώντας με πολλούς τρόπους όπως μια συνάρτηση. Επιστρέφει μια υπόσχεση για το αντικείμενο χώρου ονομάτων της λειτουργικής μονάδας που ζητήθηκε, που δημιουργήθηκε μετά την ανάκτηση, την παρουσίαση και την αξιολόγηση των εξαρτήσεων μιας μονάδας, μαζί με την ίδια τη λειτουργική μονάδα. οπροσδιοριστής θα ερμηνευθεί με τον ίδιο τρόπο όπως σε ένα εισαγωγή δήλωση. Ενώ προσδιοριστής είναι μια συμβολοσειρά, δεν είναι απαραίτητα μια κυριολεκτική συμβολοσειρά. έτσι, κώδικα όπως εισαγωγή ("./language-packs / $ {navigator.language} .js") θα δουλέψω. Αυτό δεν ήταν δυνατό με το συνηθισμένο εισαγωγή δηλώσεις. Με το σχέδιο, εισαγωγή() προτείνεται να λειτουργεί τόσο σε λειτουργικές μονάδες όσο και σενάρια, δίνοντας στον κώδικα σεναρίου ένα εύκολο ασύγχρονο σημείο εισόδου στον κόσμο της λειτουργικής μονάδας και επιτρέποντάς του να ξεκινήσει την εκτέλεση κώδικα μονάδας.
  • BigInt, ένα νέο πρωτόγονο αριθμό για εργασία με αυθαίρετους ακέραιους αριθμούς. BigInt μπορεί να αντιπροσωπεύει αριθμούς μεγαλύτερους από δύο έως την 53η ισχύ, ο μεγαλύτερος αριθμός JavaScript μπορεί να αντιπροσωπεύει αξιόπιστα με το Αριθμός πρωτόγονος. ΕΝΑ BigInt δημιουργείται με προσθήκη ν στο τέλος του ακέραιου αριθμού ή καλώντας τον κατασκευαστή.
  • ο matchAll μέθοδος για συμβολοσειρές, για να δημιουργήσετε έναν επαναληπτικό για όλα τα αντιστοιχισμένα αντικείμενα που δημιουργούνται από μια καθολική τυπική έκφραση. Το σκεπτικό πίσω από αυτήν την πρόταση είναι ότι εάν ένας προγραμματιστής έχει μια συμβολοσειρά και είτε μια κολλώδη είτε μια παγκόσμια κανονική έκφραση με πολλές ομάδες καταγραφής, ο προγραμματιστής μπορεί να θέλει να επαναλάβει όλες τις αντιστοιχίες, για τις οποίες υπάρχουν επί του παρόντος πολλές επιλογές, αλλά με περιορισμούς. Συμβολοσειρά # matchAll αντιμετωπίζει ζητήματα παρέχοντας πρόσβαση σε όλες τις ομάδες καταγραφής και όχι μεταλλάσσοντας ορατά το εν λόγω αντικείμενο κανονικής έκφρασης.
  • Promise.allΕγκατεστημένο, ένας νέος συνδυασμός Promise που δεν βραχυκυκλώνει. Αυτό επιστρέφει μια υπόσχεση που εκπληρώνεται με μια σειρά στιγμιότυπων κατάστασης υπόσχεσης, αλλά μόνο μετά την εκκαθάριση των αρχικών υποσχέσεων, δηλαδή είτε εκπληρώθηκαν είτε απορρίφθηκαν.
  • παγκόσμιαΑυτό, παρέχοντας έναν καθολικό τρόπο πρόσβασης στο παγκόσμιο Αυτό αξία.
  • Ένας αφοσιωμένος εξαγωγή * ως ns από το "module" σύνταξη για χρήση εντός ενοτήτων.
  • Αυξημένη τυποποίηση του για μεσα σειρά απαρίθμησης, προσδιορίζοντας εν μέρει τη σειρά απαρίθμησης σε JavaScript.
  • import.meta, ένα αντικείμενο με πλήθος κεντρικών υπολογιστών στις Ενότητες που μπορούν να περιέχουν πληροφορίες με βάση τα συμφραζόμενα. Αυτό χρησιμεύει ως μετα-ιδιοκτησία JavaScript, διατηρώντας συγκεκριμένα κεντρικά μεταδεδομένα σχετικά με την τρέχουσα λειτουργική μονάδα.
  • Nullish coalescing, ένας χειριστής επιλογής αξίας για καλύτερο χειρισμό περιπτώσεων που περιλαμβάνουν πρόσβαση σε ακίνητα. Είναι ένα χαρακτηριστικό σύνταξης που βελτιώνει την εργασία με τιμές "nullish" (μηδενικό ή απροσδιόριστο).
  • Προαιρετική αλυσίδα, μια πρόσβαση ιδιοκτησίας και ένας τελεστής επίκλησης λειτουργίας που θα βραχυκυκλώσει εάν η τιμή πρόσβασης / επίκλησης είναι μηδενική.

Η τελευταία ενημέρωση του ECMAScript, ECMAScript 2019, παρουσίασε δυνατότητες όπως prototype.flatMap για ένθετες συστοιχίες.

$config[zx-auto] not found$config[zx-overlay] not found