Penerapan Parsial
Tetapkan beberapa argumen dan gunakan kembali fungsi.
Penerapan Parsial adalah pelajaran JavaScript Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar JavaScript Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus JavaScript Academy mencakup 4 pelajaran total.
Apa Itu Penerapan Parsial
Penerapan parsial berarti mengambil fungsi yang memerlukan beberapa argumen lalu menetapkan sebagian argumennya terlebih dahulu, sehingga menghasilkan fungsi baru yang hanya memerlukan sisanya.
Hal ini memungkinkan Anda membangun fungsi khusus dari fungsi umum. multiply(a, b) yang umum dapat menjadi double(b) yang khusus dengan menetapkan a = 2.
Fungsi dengan Banyak Argumen
Mulailah dengan fungsi serbaguna. Di sini, add menerima tiga angka. Sering kali Anda memanggilnya berulang kali dengan argumen pertama yang sama.
function add(a, b, c) {
return a + b + c;
}
console.log(add(1, 2, 3));
console.log(add(1, 10, 100));Menetapkan Argumen secara Manual
Penerapan parsial paling sederhana hanyalah fungsi pembungkus yang menetapkan satu argumen secara langsung lalu meneruskan sisanya.
function add(a, b, c) {
return a + b + c;
}
function addTen(b, c) {
return add(10, b, c);
}
console.log(addTen(2, 3));
console.log(addTen(20, 30));Penerapan Parsial dengan bind
Function.prototype.bind dibuat untuk tujuan ini. Argumen pertamanya menetapkan this; setiap argumen setelahnya diisi sebelumnya dari sebelah kiri.
Teruskan null untuk this jika Anda tidak memedulikannya.
function add(a, b, c) {
return a + b + c;
}
const addTen = add.bind(null, 10);
console.log(addTen(2, 3));
console.log(addTen(20, 30));Mengikat Lebih dari Satu Argumen
Anda dapat menetapkan beberapa argumen awal sekaligus. Fungsi yang dikembalikan menerima semua argumen yang tersisa.
function add(a, b, c) {
return a + b + c;
}
const addElevenAndTwo = add.bind(null, 11, 2);
console.log(addElevenAndTwo(7));
console.log(addElevenAndTwo(100));Pembantu Penerapan yang Dapat Digunakan Kembali
Anda dapat menulis partial sendiri untuk menangkap argumen yang telah ditetapkan dengan parameter sisa, lalu menggabungkannya dengan argumen berikutnya menggunakan operator sebar.
function partial(fn, ...preset) {
return function (...later) {
return fn(...preset, ...later);
};
}
function greet(greeting, name) {
return greeting + ', ' + name + '!';
}
const sayHello = partial(greet, 'Hello');
console.log(sayHello('Ada'));
console.log(sayHello('Linus'));Mengkhususkan Fungsi Umum
Penerapan parsial sangat bermanfaat ketika satu fungsi umum menghasilkan banyak fungsi khusus yang kecil dan mudah dibaca.
function multiply(a, b) {
return a * b;
}
const double = multiply.bind(null, 2);
const triple = multiply.bind(null, 3);
console.log(double(5));
console.log(triple(5));Penerapan Parsial dengan Larik
Fungsi khusus terlihat rapi saat digunakan di dalam metode larik seperti map.
function power(exponent, base) {
return Math.pow(base, exponent);
}
const square = power.bind(null, 2);
console.log([1, 2, 3, 4].map(square));Mengisi Konfigurasi Sebelumnya
Salah satu penggunaan umum di dunia nyata adalah menetapkan nilai konfigurasi, seperti tarif pajak atau simbol mata uang, lalu menggunakan kembali hasilnya di mana saja.
function format(symbol, amount) {
return symbol + amount.toFixed(2);
}
const usd = format.bind(null, '$');
const eur = format.bind(null, '\u20AC');
console.log(usd(9.5));
console.log(eur(9.5));Penerapan Parsial dan Parameter Bawaan
Parameter bawaan memberikan nilai pengganti ketika argumen tidak ada. Penerapan parsial mengunci suatu nilai sehingga pemanggil tidak dapat lagi mengubahnya untuk posisi tersebut.
Keduanya menyelesaikan masalah yang berbeda: nilai bawaan bersifat opsional, sedangkan penerapan parsial bersifat tetap.
function log(level, message) {
return '[' + level + '] ' + message;
}
const error = log.bind(null, 'ERROR');
console.log(error('Disk full'));
console.log(error('Timeout'));Mengapa Penerapan Parsial Penting
Penerapan parsial mengurangi pengulangan, memperjelas maksud melalui penamaan, dan menjadi dasar untuk penerapan bertahap. Setiap kali Anda terus meneruskan argumen pertama yang sama, pertimbangkan untuk menetapkannya sekali saja.
function between(min, max, value) {
return value >= min && value <= max;
}
const isPercentage = between.bind(null, 0, 100);
console.log(isPercentage(50));
console.log(isPercentage(150));Pemeriksaan Cepat
Apa yang dikembalikan oleh fn.bind(null, 5)?
Ringkasan: Penerapan Parsial
Anda telah mempelajari cara menetapkan argumen terlebih dahulu:
- Pembungkus manual menetapkan argumen secara langsung dan meneruskan sisanya.
- bind(null, ...args) mengisi argumen sebelumnya dari sebelah kiri.
- Pembantu
partialkhusus menggunakan parameter sisa dan operator sebar. - Penerapan parsial menghasilkan fungsi khusus yang jelas dan dapat digunakan kembali, serta menjadi dasar untuk penerapan bertahap.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Penerapan Parsial” gratis?
Ya — teks lengkap “Penerapan Parsial” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus JavaScript Academy, upgrade ke CoddyKit PRO. Kursus JavaScript Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Penerapan Parsial”?
Tetapkan beberapa argumen dan gunakan kembali fungsi. Kamu berlatih JavaScript Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai JavaScript Academy?
Tidak diperlukan pengalaman sebelumnya. JavaScript Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Penerapan Parsial” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran JavaScript Academy ini?
Ya. Setiap pelajaran JavaScript Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Penerapan Parsial
- Fungsi Currying
- Komposisi Fungsi
- Membangun pipe dan compose