JavaScript Jargon 10 Ketentuan Yang Harus Anda Ketahui
Dari kari untuk penutupan ada cukup banyak jargon JavaScript (kata-kata khusus yang digunakan di dalam bidang) mengetahui yang tidak hanya akan membantu Anda meningkatkan kosakata Anda tetapi juga memahami JavaScript dengan lebih baik. Jargon biasanya ditemukan dalam dokumentasi dan artikel teknis. Tetapi beberapa dari mereka suka penutupan adalah hal yang cukup standar untuk diketahui. Mengetahui apa arti kata itu sendiri dapat membantu Anda mengetahui konsep namanya.
Posting ini adalah kompilasi dari 10 persyaratan dengan maksud mereka dan konteks di mana mereka digunakan dalam JavaScript. Jika Anda seorang pemula maka daftar ini membuat Anda tercakup dengan dasar-dasar seperti mengangkat. Pada saat yang sama istilah yang kurang dikenal atau kurang dipahami juga dimasukkan di sana.
- Arity
- Anonim
- Penutupan
- Kari
- Mengangkat
- Mutasi
- Pragma
- Penjaga
- Vanila
- Variadik
1. Arity
Arity (dari bahasa Latin) adalah istilah yang digunakan untuk merujuk pada jumlah argumen atau operan dalam fungsi atau operasi masing-masing. Anda kemungkinan besar akan menemukan kata ini di ranah JavaScript ketika kata itu digunakan untuk menyebutkan jumlah argumen yang diharapkan oleh fungsi JavaScript.
Bahkan ada properti bernama arity, dari Fungsi
objek yang mengembalikan jumlah argumen yang diharapkan dalam suatu fungsi. Sekarang sudah usang dan digantikan oleh panjangnya
.
Fungsi berikut memiliki arity 3.
function getName (pertama, tengah, terakhir) return first + "+ middle +" + last;
2. Anonim
Anonim adalah kata sifat. Ketika sesuatu atau seseorang disebut anonim, itu berarti nama benda atau orang itu tidak dikenal. Demikian juga dalam JavaScript, fungsi anonim adalah yang tidak diidentifikasi oleh nama.
(function () // body) ();
Di atas adalah IIFE (Ekspresi Fungsi Segera Diminta). Fungsi di dalamnya anonim karena tidak memiliki nama. Sekarang, lihat yang di bawah ini.
var foo = function () ;
Itu juga dikatakan sebagai fungsi anonim karena tidak ada nama setelah kata kuncinya fungsi
.
Sedikit keraguan muncul dalam kebenaran penggunaan kata tersebut “anonim”. Dengan IIFE, fungsi dipanggil segera, tidak ada nama yang terlibat sedangkan, untuk memanggil fungsi terakhir sintaks foo ()
digunakan.
Ini seperti kita membaptis fungsi tanpa nama dengan nama 'foo' dan menyebutnya menggunakan itu. Apakah itu dianggap anonim? Saya tidak tahu, saya akan menyerahkannya kepada para ahli bahasa Inggris. Namun, di luar kebingungan saya, mereka berdua memang disebut sebagai fungsi anonim.
3. Penutupan
Ini adalah salah satu definisi dari kamus oxford untuk penutupan: “Sesuatu yang menutup atau menyegel sesuatu, seperti topi atau dasi.”
Dalam JavaScript, penutupan adalah fungsi dalam, yang dapat diakses di luar lingkup fungsi luarnya, dengan koneksi ke variabel fungsi luar masih utuh..
Untuk menjelaskan berbagai hal (mungkin tidak cukup akurat tetapi cukup sederhana), pertimbangkan penutupan sebagai pelayan di restoran. Banyak hal terjadi di dalam dapur restoran, di mana kita tidak diizinkan masuk atau melihat. Tapi bagaimana kita bisa mendapatkan makanan kita??
Di situlah para pelayan masuk. Kami memanggil mereka, memesan makanan, dan kemudian mereka akan pergi ke dapur, memberi tahu para koki tentang pesanan, dan membawanya kepada kami ketika pesanan sudah siap. Dengan cara ini kami tidak merusaknya “aturan” dan masih bisa makan.
Pelayan adalah seseorang yang dapat mengambil pesanan kami ke dapur dan kembali dengan makanan. JavaScript penutupan mirip dengan itu, mereka mampu ambil parameter kami dan mengembalikan variabel kita (referensi ke variabel-variabel itu, tepatnya) dari dalam fungsi yang tidak diizinkan.
function order () var food; fungsi pelayan (pesanan) koki (pesanan); mengembalikan makanan; function chef (pesanan) if (order === 'pasta') food = ['pasta', 'gravy', 'seasoning']; memasak(); function cook () food.push ('dimasak'); pelayan pulang; var myOrder = order (); console.log (myOrder ('pasta')); // Array ["pasta", "saus", "bumbu", "dimasak"]
Seperti yang dapat Anda lihat dari kode di atas, semuanya terpisah dari pelayan
dan nilai pengembaliannya dari dalam fungsi pesanan tidak terpapar ke dunia luar.
4. Kari
Efeknya, dinamai Haskell Curry, mengacu pada menggunakan banyak fungsi dengan argumen tunggal, menggantikan fungsi tunggal dengan banyak argumen. Mari kita lihat menambahkan
fungsi di bawah ini misalnya.
function addx (x) function addy (y) return x + y; return addy fungsi add (x, y) return (x + y); console.log (addx (3) (4)); \\ 7 console.log (tambahkan (3,4)); \\ 7
Kedua fungsi mengembalikan hasil yang sama. Fungsinya addx
menerima parameter x
saat kembali addy
yang pada gilirannya menerima y
nilai, melakukan penambahan dengan x
dan mengembalikan jumlahnya.
Fungsinya menambahkan
hanya mengambil keduanya x
dan y
pada saat yang sama, melakukan penambahan dan mengembalikan jumlahnya. Sejauh ini fungsi pertama mungkin tidak terlalu berguna, sampai ...
var add4 = addx (4); console.log (add4 (8)); // 12 console.log (add4 (6)); // 10 console.log (add4 (-74)); // - 70
Sekarang, fungsi sebelumnya tiba-tiba menjadi menarik. Dalam currying, Anda selalu dapat memperbaiki langkah dalam urutan operasi seperti penambahan 4 dari kode di atas, yang sangat membantu ketika salah satu variabel yang digunakan dalam operasi selalu sama.
5. Mengangkat
Hoist berarti mengangkat sesuatu. Mengangkat dalam JavaScript juga berarti sama dan yang diangkat adalah deklarasi (deklarasi variabel & fungsi).
Deklarasi adalah tempat variabel dan fungsi dibuat dengan kata kunci var
(bukan untuk global) dan fungsi
.
Tidak masalah di mana Anda mengetik kode untuk mendeklarasikan fungsi atau variabel, selama evaluasi semua deklarasi dipindahkan ke dalam lingkup di mana mereka berada (kecuali dalam mode ketat). Oleh karena itu, dimungkinkan untuk menulis kode kerja dengan kode untuk panggilan fungsi yang ditempatkan sebelum deklarasi fungsi.
var name = 'Velma'; console.log (sayCatchPhrase (nama)); // "Jinkies!" fungsi sayCatchPhrase (nama) phrases = 'Fred Flintstone': 'Yabba dabba doo!', 'Velma': 'Jinkies!', 'Pisau Cukur': 'Bingo!', 'He-Man': 'I Have the Power '; kembalikan frase [nama];
6. Mutasi
Mutasi berarti perubahan atau modifikasi. Jika Anda pernah menemukan kata mutasi dalam JavaScript, itu mungkin merujuk pada perubahan yang dilakukan elemen DOM.
Bahkan ada API bernama MutationObserver untuk mengawasi mutasi DOM seperti penambahan elemen anak atau perubahan atribut elemen. (Anda dapat membaca lebih lanjut tentang MutationObserver di pos saya.)
7. Pragma
Pragma kependekan dari informasi pragmatis. Dalam bahasa Inggris yang sederhana, pragmatis adalah kata sifat yang berarti masuk akal dan praktis. Dalam pemrograman, pragma merujuk pada kode yang berisi informasi bermanfaat tentang bagaimana seorang kompiler atau juru bahasa atau assembler harus memproses program.
Itu tidak berkontribusi apa pun ke bahasa pemrograman itu sendiri dan sintaksnya dapat bervariasi. Mereka hanya mempengaruhi perilaku kompiler. JavaScript juga memiliki beberapa pragma, salah satunya adalah ketat
.
"gunakan ketat";
Dengan pragma di atas, kode JavaScript akan dieksekusi dalam mode ketat. Dalam mode ketat, sintaksis buruk tidak diizinkan, mengangkat tidak dilakukan, kesalahan diam ditampilkan, dll. Ini membantu dalam menulis kode JavaScript yang lebih aman dan optimal.
8. Sentinel
Sentinel adalah tentara yang berjaga-jaga (Ingat yang dari X-Men?). Dalam pemrograman, penjaga adalah nilai yang digunakan untuk menunjukkan akhir dari suatu loop atau proses. Mereka juga bisa dipanggil “bendera”.
Anda dapat menggunakan nilai wajar apa pun sebagai a penjaga. Berikut ini contoh penjaga digunakan dalam JavaScript; itu Indeks
metode yang mengembalikan -1 (nilai sentinel) ketika nilai pencarian tidak ditemukan dalam string yang ditargetkan. Di bawah ini adalah fungsi yang mengembalikan posisi nilai array dan jika nilai tidak ditemukan, mengembalikan -1.
function getPos (ary, val) var i = 0, len = ary.length; untuk (; i9. Vanilla
Saya pikir rasa es krim pertama semua orang pasti vanila. Saya juga berpikir bahwa tidak hanya dalam es krim, tetapi di hampir setiap jenis hidangan vanilla menjadi itu rasa standar. Saya telah melihat beberapa resep kue di mana mereka menambahkan setidaknya satu tetes ke dalam campuran - hanya untuk menambah rasa.
Dan begitulah vanila adalah rasa standar tradisional. Vanila JavaScript disebut JavaScript standar - tanpa kerangka. Vanilla sebenarnya tidak hanya digunakan untuk menggambarkan versi standar JavaScript tetapi juga bahasa lain seperti CSS.
10. Variadik
Variadik adalah kata sifat yang dibuat dengan bergabung “variabel” dan “adicity”. “Adicity” berasal dari bahasa Yunani kuno, dengan arti yang sama dengan kata Latin “arity” (Item 1 dalam daftar ini). Demikian istilahnya variadik digunakan untuk mengungkapkan sesuatu yang memiliki jumlah variabel argumen.
Dalam JavaScript, a variadik fungsi mengambil sejumlah argumen. Itu dapat dibuat menggunakan
argumen
milik,menerapkan
metode dan sejak ES6, operator penyebaran. Di bawah ini adalah contoh menggunakan operator spread.tes fungsi (... a) console.log (a); test ('a', 'b', 'c', 8, [56, -89]); // outputnya adalah Array ["a", "b", "c", 8, Array [2]]