Peta jalan ECMAScript: Fitur JavaScript baru untuk 2019

ECMAScript 2019, versi terbaru dari spesifikasi yang berfungsi sebagai dasar JavaScript, telah diselesaikan. ECMA International menyetujui spesifikasi tersebut pada bulan Juni.

Fitur baru yang diperkenalkan di ECMAScript 2019 meliputi yang berikut:

  • Symbol.prototype.description, properti pengakses yang set accessortidak ditentukan. Fungsinya get accessormelakukan langkah-langkah termasuk: Let sbe this value, let symbe ?thisSymbolValue(s), and return sym. [[Description]]. Tujuan fitur ini adalah untuk mengekspos [[Description]]slot internal simbol secara langsung, bukan hanya secara tidak langsung Symbol.prototype.toString.
  • Perubahan menjadi Function.prototype.toString. Revisi telah diusulkan seperti implementasi yang tidak diperlukan untuk mempertahankan teks sumber untuk semua fungsi yang ditentukan menggunakan kode ECMAScript.
  • prototype.flatMap, operasi larik umum yang mengambil struktur larik bersarang dan menghapus satu atau beberapa tingkat penumpukan bergantung pada parameternya. Flat ada di pustaka mirip array seperti Lodash, yang membuat pengguna menginginkan fungsionalitas yang sama di vanilla JavaScript.
  • prototype.flatmap, peta yang diikuti dengan flat, menawarkan sedikit kemudahan dan sedikit pengoptimalan. Flatmap nyaman karena perataan dan pemetaan sering kali berguna dalam operasi yang sama. Ini juga merupakan pengoptimalan karena tidak perlu mengalokasikan larik untuk pemetaan hanya untuk membuangnya saat mendatar.
  • prototype.sort(), sebuah metode yang mengurutkan elemen dari sebuah array dan mengembalikan array tersebut, sekarang sudah stabil.
  • Object.fromEntries, menyediakan metode statis baru untuk mengubah daftar pasangan nilai kunci menjadi objek.
  • String.prototype.trimStartdan String.prototype.trimEnd. Alasan di balik revisi ini adalah bahwa semua mesin utama telah menerapkan fungsi yang sesuai trimLeftdan trimRight tanpa spesifikasi standar. Untuk konsistensi dengan padStart/padEnd, trimStart, trimEnd, trimLeft, dan trimRightsedang diusulkan sebagai alias untuk kompatibilitas web.
  • Pembaruan untuk JSON.stringifymemancarkan UTF-16 (Unicode Transformation Format) dengan format yang baik. Saat ini, unit kode yang cacat mungkin dipancarkan untuk poin kode pengganti.
  • catchPengikatan opsional , memungkinkan pengembang untuk menghilangkan catchpengikatan saat pengikatan tidak akan digunakan.

Spesifikasi lengkap ECMAScript 2019 dapat dilihat secara online di situs ECMA International. Itu juga dapat diunduh. Edisi ECMAScript yang lengkap biasanya diterbitkan setiap bulan Juni, seperti spesifikasi ECMAScript 2018 tahun lalu.