Pertanyaan Wawancara JavaScript yang Perlu Diketahui
Oleh Aaron Cao · Diperbarui

Harapkan dasar-dasar: closures, event loop, this binding, prototype, dan scoping dengan var, let, dan const. Lalu latihan coding seperti membuat debounce, meratakan array, atau menulis utilitas promise, plus topik browser seperti event delegation. Sesi untuk level senior menambahkan pola async dan performa.
Dasar-dasar JavaScript apa yang paling sering ditanyakan?
Daftar pertanyaan untuk JavaScript terasa tak terbatas, dan mengerjakan pertanyaan acak adalah cara paling lambat untuk menguasainya. Bagian ini mempersempitnya ke konsep yang terus muncul di hampir setiap sesi wawancara, sehingga latihan Anda tepat sasaran. Lima topik ini mendominasi sebagian besar sesi:
- Closures: apa yang ditangkap oleh sebuah fungsi, bug klasik pada variabel loop, dan mengapa pola module bisa bekerja.
- Event loop: call stack, task queue, dan microtask queue, serta urutan log tercetak pada contoh campuran.
- this binding: default, implicit, explicit dengan call dan apply, dan bagaimana arrow function berbeda.
- Prototype: pencarian properti di sepanjang chain, dan hasil kompilasi dari sintaks class.
- Scoping: var dibandingkan let dan const, hoisting, dan temporal dead zone.
Koersi kesetaraan dengan == dibandingkan ===, truthiness, dan metode array seperti map, filter, dan reduce melengkapi level screening. Jika Anda bisa menjelaskan tiap poin di atas secara lisan dalam waktu kurang dari satu menit, sesi dasar-dasar akan berjalan lancar.
Latihan coding apa yang perlu dipraktikkan?
Selain pertanyaan konsep, sebagian besar sesi JavaScript menyertakan latihan implementasi singkat yang dikerjakan secara langsung. Kumpulan soal yang berulang ini kecil dan layak dilatih sampai masing-masing hanya butuh beberapa menit, bukan berkali-kali percobaan:
- Implementasikan
debouncedanthrottle, dan jelaskan kapan masing-masing cocok digunakan. - Ratakan array bersarang dengan dan tanpa rekursi.
- Tulis versi sederhana dari
Promise.allyang melakukan reject saat kegagalan pertama. - Bangun event emitter kecil dengan on, off, dan emit.
- Deep clone sebuah object dan sebutkan kasus yang terlewat oleh versi Anda.
Misalnya, seorang kandidat front-end yang mewawancarai untuk posisi mid-level mungkin mendapat debounce sebagai pemanasan, lalu diminta menghubungkannya ke input pencarian dan menjelaskan apa yang terjadi pada request yang masih berjalan. Pertanyaan lanjutan inilah ujian sesungguhnya; pewawancara memperluas latihan untuk melihat batas pemahaman Anda tentang bahasa ini.
Melatih semua ini dengan bersuara di hadapan pewawancara yang terus menekan adalah yang membuatnya benar-benar melekat; halaman mock interview membahas cara menjalankan sesi berwaktu dengan pertanyaan lanjutan.
Seperti apa pertanyaan tentang browser dan async?
Peran yang berhadapan dengan browser menambahkan satu lapisan di atas dasar-dasar bahasa. Event delegation menjadi intinya: mengapa satu listener pada parent lebih baik daripada seribu listener pada children, bagaimana bubbling membuat itu bekerja, dan kapan capture phase menjadi penting. DOM update batching, layout thrash, dan apa yang memicu reflow muncul pada sesi bernuansa performa.
Pertanyaan async kini mengerucut pada satu bentuk standar: sebuah cuplikan kode yang mencampur setTimeout, rantai promise, dan fungsi async, di mana Anda harus memprediksi urutan output. Jawabannya bergantung pada urutan microtask dibandingkan macrotask, dan pewawancara lebih peduli pada alasannya daripada urutan itu sendiri. Penanganan error di seluruh batas await, promise chaining dibandingkan nesting, dan race requests dengan Promise.race melengkapi kumpulan soal ini.
Bagaimana sesi-sesi ini berbeda di antara format coding, behavioral, dan system design dibahas di hub jenis wawancara.
Bagaimana cara berlatih supaya benar-benar terpakai saat sesi sesungguhnya?
Membaca jawaban terasa produktif tetapi nyaris tidak memberi efek apa pun. Sesi ini diucapkan, berwaktu, dan interaktif, jadi latihan Anda pun harus begitu. Jalankan sesi simulasi di mana Anda menjelaskan sambil mengetik, mendapat interupsi berupa pertanyaan lanjutan, dan dikejar waktu; tekanan itulah yang membuat pengingatan menjadi otomatis. Kumpulan soal khusus peran untuk bahasa dan stack lain tersedia di hub bank pertanyaan.
Satu catatan jujur: sesi JavaScript sesungguhnya biasanya berlangsung di editor bersama dengan layar Anda terlihat, dan asesmen yang diawasi merekamnya. Asisten AI berguna untuk persiapan dan latihan di luar itu, bukan untuk layar yang dibagikan secara langsung. Ketika bantuan langsung memang sah, misalnya pada phone screen yang tidak dibagikan atau sesi latihan pribadi Anda, overlay SubcueAI tetap lokal di perangkat Anda dan tidak ada bot yang bergabung ke panggilan.
FAQ
Apakah wawancara JavaScript hanya soal LeetCode?
Apa yang harus difokuskan developer junior lebih dulu?
Bagaimana cara menjelaskan event loop secara sederhana?
Apakah wawancara JavaScript membahas TypeScript?
Pertanyaan terkait
- Pertanyaan wawancara Databricks apa yang perlu saya antisipasi?
- Pertanyaan wawancara .NET apa yang perlu saya antisipasi?
- Pertanyaan wawancara quality engineer apa yang perlu saya antisipasi?
- Pertanyaan apa yang akan muncul dalam wawancara quant?
- Pertanyaan wawancara Snowflake apa yang perlu saya antisipasi?
- Pertanyaan apa yang akan diajukan dalam wawancara guru?
← Selengkapnya tentang Pertanyaan Wawancara Berdasarkan Peran & Topik