Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Apa Arti Proposal Sintaks Jenis ES Microsoft Untuk JavaScript

Posted on September 20, 2022

JavaScript akan segera memiliki tipe sintaks sendiri jika proposal yang diajukan oleh Microsoft dan pengembang lain awal tahun ini menjadi bagian dari standar ECMAScript. Inisiatif ini berencana untuk menambahkan dukungan “ketik sebagai komentar” ke bahasa JavaScript, membiarkan pengembang membubuhi keterangan kode dengan informasi jenis yang akan digunakan oleh komponen ekosistem lainnya.

Sintaks

Sintaks yang diusulkan terlihat seperti ini:

function sayAge(name: string, age: number)
{ 
console.log(`${name} adalah ${age} tahun.`);
}   
sayAge("JavaScript",26);

Ini akan akrab bagi siapa saja yang sebelumnya menggunakan TypeScript, superset JavaScript yang diketik Microsoft . TypeScript telah mendapatkan adopsi luas di seluruh industri; proposal baru ini dimaksudkan untuk membawa beberapa manfaatnya ke dunia JavaScript yang lebih luas.

Jika disetujui, proposal ini akan memungkinkan Anda menulis JavaScript yang benar-benar valid dengan jenis anotasi yang ditunjukkan di atas. Ini akan diterima oleh runtime JavaScript seperti browser web, Node.js, dan Deno yang menghormati ES standard.

. Proposal tidak benar-benar memperluas bahasa JavaScript. Anotasi jenis Anda akan persis seperti itu: metadata inert yang tidak berpengaruh pada kompiler JavaScript atau runtime kode Anda. Panggilan fungsi seperti berikut ini akan berfungsi saat runtime:

function sayAge(name: string, age: number){ console.log(`${name} is ${age} years old.`);}   // “age” adalah string yang seharusnya berupa angka, tetapi ini masih diperbolehkan sayAge(“JavaScript”,”twenty”);

Idenya adalah untuk menawarkan sintaks tipe baru yang secara resmi didukung tetapi sepenuhnya diabaikan oleh mesin. Satu-satunya perubahan untuk implementasi menyangkut pengenalan dan penghapusan anotasi jenis di mana pun mereka digunakan.

Proposal akan berusaha untuk membangun dukungan yang membuat anotasi jenis parameter, variabel, dan properti kelas. Itu juga melihat menambahkan kata kunci antarmuka, operator pernyataan seperti ! dan sebagai, dan ? pengubah untuk menandai jenis sebagai opsional. Tujuannya adalah agar semua elemen ini mencerminkan TypeScript; seperti halnya proposal Tahap 0, hasil akhirnya mungkin bekerja secara berbeda.

Jika jenis anotasi tidak akan mengubah program Anda, pertanyaan yang jelas adalah apakah mereka layak dimiliki. Proposal berpendapat “ya” karena kemampuan sintaks untuk mempersingkat waktu iterasi dan mengurangi beban di sekitar rantai alat JavaScript modern.

Menulis kode tipe-safe saat ini mengharuskan Anda menggunakan TypeScript, ragam bahasa berbeda yang menambahkan dependensi ke proyek Anda dan memerlukan manual langkah kompilasi. Kode itu kemudian dapat melewati alat lain seperti bundler modul dan transpiler sebelum JavaScript akhir Anda diproduksi untuk didistribusikan. Ini menambahkan hingga rantai alat yang kompleks dengan beberapa bagian yang bergerak.

Meskipun JavaScript adalah bahasa yang diketik secara inheren, manfaat pengetikan yang kuat sekarang diakui secara luas oleh komunitas. Ini terbukti dari momentum seputar proyek TypeScript. Pengetikan statis juga merupakan pemimpin yang jelas dalam pertanyaan “fitur yang hilang” dari survei State of JS tahun 2021.

Menambahkan sintaks jenis ke JavaScript itu sendiri akan memungkinkan Anda mendapatkan beberapa manfaat TypeScript tanpa harus mengkompilasi kode Anda. Ini menyederhanakan penyiapan dan pemeliharaan proyek sambil mengembangkan JavaScript agar lebih selaras dengan praktik pengembangan modern.

Selama beberapa tahun terakhir, lebih banyak kode telah mulai bermigrasi kembali ke pendekatan “JavaScript murni”. Penurunan browser lawas membuat transpilasi kurang diperlukan daripada sebelumnya – sebagian besar implementasi modern menawarkan dukungan penuh untuk fitur seperti kelas, fungsi panah, variabel cakupan blok, dan async/menunggu. JavaScript bahkan memiliki sistem modul lengkap yang bekerja di seluruh mesin, termasuk di browsers.

Hanya beberapa tahun yang lalu rantai alat yang panjang diperlukan untuk dapat menulis fitur-fitur ini ke dalam kode Anda dengan keyakinan bahwa itu akan berfungsi pada perangkat pengguna. Saat ini pengembang dapat dengan aman mengesampingkan proses pembangunan tersebut, kembali ke model JavaScript asli dari file referensi dengan tag.

Types adalah salah satu dari sedikit area tersisa dari ekosistem JavaScript yang tidak diakomodasi oleh bahasa itu sendiri. Suka atau benci mereka, tidak dapat disangkal bahwa tipe telah menjadi bagian integral dari pengembangan JavaScript untuk banyak tim dan proyek. Proposal sintaks secara resmi mengakui fakta ini. Ini mencoba untuk membawa tingkat dukungan tipe ke JavaScript tanpa merusak kode yang ada atau memaksakan pemeriksaan tipe runtime yang menekan kinerja.

Apa yang Sebenarnya Harus Dilakukan Tipe?

Peran “tipe” bervariasi antar bahasa. Demoninator umum terletak pada kemampuan tipe untuk mengekspresikan tipe data yang akan dimiliki oleh variabel tertentu. Makna, kemampuan, dan perilaku tambahan kemudian dilapiskan pada fondasi tersebut.

Dalam bahasa kompilasi yang diketik secara statis seperti C# dan Java, tipe diterapkan pada waktu kompilasi. Tidak mungkin untuk mengkompilasi sebuah program ketika Anda memiliki inkompatibilitas tipe dalam kode Anda. Dalam bahasa yang ditafsirkan dengan pengetikan kuat opsional, di mana PHP adalah contohnya, tipe diterapkan saat runtime – program membuat kesalahan saat tipe nilai tidak sesuai dengan konteks penggunaannya.

Perdebatan aktif dalam komunitas JavaScript adalah bagaimana sejauh mana sistem tipe bawaan harus diperluas. Proposal ini membatasi perannya pada elemen yang paling mendasar, dokumentasi sederhana dari tipe nilai yang diharapkan. Ini selaras dengan posisi TypeScript sebagai sintaks tipe yang dapat dihapus yang diabaikan saat runtime.

Tujuan dari model ini adalah untuk memberikan umpan balik instan kepada pengembang tentang potensi bug saat mereka menulis kode. Anda bisa mendapatkan informasi tentang masalah jenis saat Anda menulis JavaScript biasa di IDE yang kompatibel. Jika mau, Anda juga dapat menggunakan alat pendukung seperti TypeScript, penganalisis statis, atau bundler untuk mengaudit sumber sesuai permintaan. Hal ini dapat memblokir penerapan di saluran CI Anda ketika ada masalah jenis.

Perasaan saat ini adalah bahwa kemampuan ini cukup untuk menyelaraskan JavaScript dengan kebutuhan pengembang yang paling umum. Fitur yang ditemukan dalam bahasa lain seperti introspeksi dan refleksi biasanya tidak diperlukan dalam ekosistem JavaScript, sebagian karena pengembang telah terbiasa dengan pendekatan penghapusan TypeScript.

Alternatif yang Ada: Docblocks

Perlu dicatat bahwa sesuatu yang mirip dengan sintaks anotasi terhapus yang diusulkan sudah ada: Tag JSDoc yang familiar biasanya digunakan untuk menambahkan detail tipe ke kode JavaScript biasa:

/** * @param name {string} * @param age {number} */function sayAge(name, age){ console.log(`${ name} berusia ${age} tahun.`);}komentar

JSdoc didukung oleh berbagai alat populer. Namun, mereka bukan bagian standar dari bahasa dan mereka mengharuskan Anda untuk mencampur rincian operasi kode Anda – jenis yang diharapkan – dengan dokumentasi human-centric yang terdiri dari sintaks docblock.

JSdoc lainnya juga sangat bertele-tele. Selain nama tag yang diperlukan, biasanya memerlukan pengulangan elemen yang sudah ada dalam kode Anda, seperti nama parameter pada contoh di atas. Jika Anda mengubah parameter dalam tanda tangan fungsi, Anda harus ingat untuk mengubah tag JSDoc juga.

Proposal sintaks baru mungkin secara fungsional setara dengan docblock tetapi menawarkan pengalaman yang jauh lebih efisien. Jenis berada di samping target mereka sebagai bagian dari sumber Anda, bukan di docblock yang Anda perlukan untuk menulis dan memelihara secara terpisah.

Tim TypeScript Microsoft dan rekan penulis termasuk Bloomberg, Igwalia, dan beberapa kontributor independen mengajukan proposal Tahap 0 di pleno TC39 Maret 2022. Proposal tersebut telah berkembang ke Tahap 1. Penerimaan masih agak jauh, dengan implementasi di dalam mesin yang berpotensi tidak datang selama “bertahun-tahun”.

Tujuan menyeluruh proposal ini adalah untuk menyeimbangkan kode panjang JavaScript yang tidak diketik dengan permintaan saat ini untuk pengalaman pengembangan yang lebih diketik secara statis. Penggunaan sintaks opsional yang terhapus sepenuhnya menjamin kompatibilitas mundur tetapi meningkatkan prospek bahwa itu tidak akan efektif dalam mendorong adopsi dan mengkonsolidasikan ekosistem. Perdebatan seputar yang satu ini tampaknya akan berkembang dengan pendapat dan perspektif baru seiring dengan kemajuan proposal melalui track standar.

Itulah berita seputar Apa Arti Proposal Sintaks Jenis ES Microsoft Untuk JavaScript, semoga bermanfaat. Disadur dari HowToGeek.com.

Terbaru

  • Begini Cara Hapus Akun DANA Premium Secara Permanen!
  • Bukan Cuma Mitos! Ternyata Dinasti Song Punya Tempat Nongkrong Mirip PIK, Begini Isinya
  • Bukan Fiksi! Ini Bukti Manusia Punya ‘Kekuatan Super’ Akibat Mutasi Genetik dan Lingkungan
  • Dikelilingi Cincin Api, Kok Kalimantan Malah Nggak Punya Gunung Berapi? Ini Jawabannya!
  • Misteri Newgrange: Kuburan Batu 5.000 Tahun yang Menyimpan Peta Galaksi, Kok Bisa?
  • Transformasi Ekstrem Pesawat IL-96: Ganti 4 Mesin Jadi 2 Mesin Raksasa PD-35, Emang Bisa?
  • Apakah Aplikasi Cash Reels Penipu?
  • Ini Daftar Kode Redeem Fish It Roblox Terbaru Januari 2026 buat Panen Hadiah!
  • Main Game Dapat Duit? Cek Dulu Fakta Shop Shelf Master Sebelum Nyesel!
  • Monitor Putih Sejutaan Spek Dewa, Acer S243y Bikin Ngiler!
  • Kapsul Luar Angkasa China Ini Bisa Mendarat Selembut Awan, SpaceX Bakal Ketar-ketir?
  • Kereta Maglev 500 KM/Jam: Proyek Gila 1.100 Triliun dari Jepang
  • Kenapa Perusahaan China Mulai Ungguli Amerika di Sektor AI dan Otomotif
  • Mau Beli iPhone 17 Tapi Budget Mepet? Ini Daftar Alternatif iPhone yang Masih Layak Dibeli
  • Apa itu OFTV? Pengertian OnlyFans TV: Platform Streaming Gratis Tanpa Iklan dari OnlyFans
  • Heboh Video 5 Menit Elga Puruk Cahu, Kok Bisa Seviral Itu? Ini Link Downloadnya?
  • Cara Mengatasi Masalah Windows Deactivated Setelah Kloning Disk
  • Investasi Bitnest Janjikan Profit Stabil, Yakin Aman? Cek Dulu Faktanya Sebelum Nyesel!
  • Cara Mengatasi Masalah Klik Mouse Tidak Berfungsi di Windows
  • Apple Dikabarkan Bikin iPhone Layar Lengkung 4 Sisi, Niru Xiaomi?
  • Inikah HP Samsung Terawet? Samsung Diam-diam Uji Baterai 20.000 mAh
  • Ini Deretan HP Murah RAM 12 GB yang Bisa Bikin Multitasking Ngebut!
  • Ini Trik Rahasia Dapat Candy Blossom di Grow a Garden, Nggak Cuma dari Event!
  • Siap-siap Boros! Ini Bocoran Skin Starlight Januari 2026 dan Update Seru M7
  • Moto X70 Air Pro Bakal Punya Kamera Periskop Canggih!
  • Ternyata Nggak Semua Aplikasi Bisa QRIS CPM di Alfamart, Ini Penjelasannya!
  • Lagi Order Tiba-tiba Gojek Error? Jangan Panik Dulu, Coba Langkah Praktis Ini!
  • Belum Tahu? Inilah Cara Melihat Kode Verifikasi Email Saya 6 Digit yang Sering Bikin Bingung!
  • Belum Tahu? Ini Cara Dapat Akses Premium Viu & Vidio Gratis Pakai Axis!
  • Belum Tahu? Inilah Fakta Kamera 0,5 di Samsung Galaxy A05s, Jangan Salah Beli!
  • Apa itu Cosmic Desktop: Pengertian dan Cara Pasangnya di Ubuntu 26.04?
  • Apa Itu Auvidea X242? Pengertian Carrier Board Jetson T5000 dengan Dual 10Gbe
  • Elementary OS 8.1 Resmi Rilis: Kini Pakai Wayland Secara Standar!
  • Apa Itu Raspberry Pi Imager? Pengertian dan Pembaruan Versi 2.0.3 yang Wajib Kalian Tahu
  • Performa Maksimal! Ini Cara Manual Update Ubuntu ke Linux Kernel 6.18 LTS
  • Inilah Cara Mengamankan Aplikasi LLM dengan AI Guardrails agar Tidak Halusinasi dan Bocor Data
  • Prompt AI Poster Vecna Stranger Things
  • Inilah Cara Menghancurkan Model AI Raksasa Hanya Bermodal 250 Dokumen
  • Tutorial Cara Menjalankan LLM Private di Laptop Sendiri, Aman dan Gratis Tanpa Internet
  • Begini Cara Buat Generator Stiker WhatsApp Otomatis Menggunakan Python dan OpenAI GPT-Image-1
  • Apa Itu Scam Network? Pengertian Jaringan Situs Palsu yang Baru Saja Digerebek FBI
  • Masih Ragu Soal Privasi OnlyFans? Ini Fakta dan Risiko Keamanan Digital yang Wajib Kalian Tahu!
  • Apa itu Praktik Pelacakan Data Ilegal? (Belajar dari Kasus Denda Apple di Italia)
  • OnlyFans Aman Nggak Sih? Cek Dulu Fakta dan Risiko Keamanannya Sebelum Kalian Daftar!
  • Apa itu Elga Puruk Cahu? Ini Alasan Video 5 Menitnya Viral Banget!
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV

©2026 emka.web.id | Design: Newspaperly WordPress Theme