Rumah >hujung hadapan web >tutorial js >Soalan Temuduga NODE...

Soalan Temuduga NODE...

PHPz
PHPzasal
2024-09-11 16:30:291163semak imbas

NODE Interview Questions...

1. Apakah itu Node.js?

Jawapan: Node.js ialah persekitaran masa jalan yang dibina pada enjin JavaScript V8 Chrome yang membolehkan pembangun menjalankan kod JavaScript pada bahagian pelayan. Ia direka bentuk untuk membina aplikasi rangkaian berskala dan menyokong seni bina yang tidak menyekat, dipacu peristiwa.

2. Apakah perbezaan antara Node.js dan JavaScript?

Jawapan: JavaScript ialah bahasa pengaturcaraan yang dijalankan dalam penyemak imbas.
Node.js ialah persekitaran masa jalan yang membenarkan JavaScript dijalankan pada bahagian pelayan.

3. Apakah itu Pengaturcaraan Didorong Peristiwa dalam Node.js?

Jawapan: Pengaturcaraan dipacu peristiwa ialah paradigma pengaturcaraan di mana aliran program ditentukan oleh peristiwa seperti tindakan pengguna, output penderia atau mesej daripada program lain. Dalam Node.js, pengaturcaraan dipacu peristiwa adalah penting untuk mengendalikan operasi tak segerak menggunakan pemancar dan pendengar acara.

4. Apakah perbezaan antara process.nextTick() dan setImmediate()?

Jawapan: process.nextTick() menjadualkan panggilan balik untuk dilaksanakan selepas operasi semasa selesai, tetapi sebelum gelung acara diteruskan.
setImmediate() menjadualkan panggilan balik untuk diletakkan pada gelung acara selepas acara I/O.

5. Bagaimanakah Node.js mengendalikan operasi tak segerak?

Jawapan: Node.js menggunakan model I/O tanpa sekatan benang tunggal dengan seni bina dipacu peristiwa. Ia memanfaatkan panggilan balik, janji dan async/menunggu untuk mengendalikan operasi tak segerak, memastikan pelayan boleh memproses banyak permintaan serentak tanpa menyekat urutan utama.

6. Apakah aliran dalam Node.js?

Jawapan: Strim ialah objek dalam Node.js yang membolehkan anda membaca atau menulis data dalam ketulan. Ia digunakan untuk mengendalikan jumlah data yang besar dengan memprosesnya dalam ketulan yang lebih kecil dan boleh diurus, yang mengurangkan penggunaan memori. Terdapat empat jenis aliran:

Boleh dibaca (cth., fs.createReadStream())
Boleh ditulis (cth., fs.createWriteStream())
Dupleks (boleh dibaca dan boleh ditulis)
Transform (sejenis aliran dupleks di mana output adalah transformasi input)

7. Apakah perbezaan antara kod segerak dan tak segerak dalam Node.js?

Jawapan: Kod segerak menyekat; ia menunggu setiap operasi selesai sebelum beralih ke operasi seterusnya.
Kod tak segerak tidak menyekat; ia membenarkan atur cara untuk terus melaksanakan tanpa menunggu operasi selesai (dikendalikan melalui panggilan balik, janji atau async/menunggu).

8. Apakah fungsi middleware dalam Express.js?

Jawapan: Fungsi middleware dalam Express.js ialah fungsi yang dilaksanakan semasa kitaran permintaan-tindak balas. Mereka boleh mengubah suai permintaan, respons, atau melaksanakan beberapa logik sebelum memberikan kawalan kepada fungsi middleware seterusnya. Jenis biasa termasuk:

Perisian tengah peringkat aplikasi: Terikat kepada contoh express()
Perisian tengah peringkat penghala: Terikat kepada contoh express.Router()
Ralat mengendalikan middleware

9. Bagaimanakah gelung acara berfungsi dalam Node.js?

*Jawapan: * Gelung peristiwa bertanggungjawab untuk mengendalikan panggilan balik tak segerak dalam Node.js. Ia sentiasa memantau timbunan panggilan, baris gilir tugas, dan operasi I/O. Apabila timbunan panggilan kosong, ia memproses tugasan daripada baris gilir acara, memastikan I/O tidak menyekat dengan menangguhkan operasi berat.

10. Apakah kegunaan modul kluster dalam Node.js?

Jawapan: Modul kluster membenarkan Node.js mencipta proses anak (pekerja) yang berkongsi port pelayan yang sama. Ini membantu dalam mengimbangi beban dan menggunakan sepenuhnya sistem berbilang teras dengan menjalankan berbilang contoh Node.js untuk mengendalikan lebih banyak permintaan secara serentak.

11. Apakah perbezaan antara require() dan import dalam Node.js?

Jawapan: require() ialah sebahagian daripada sistem modul CommonJS dan adalah segerak. Ia digunakan untuk memuatkan modul dalam versi Node.js sebelum ES6.
import ialah sebahagian daripada sistem modul ES6, dan ia berfungsi dengan sistem modul asli JavaScript, membolehkan sokongan untuk analisis statik dan gegaran pokok. Ia digunakan dalam versi Node.js yang lebih baharu dengan modul ECMAScript.

12. Bagaimanakah anda mengendalikan ralat dalam Node.js?

Jawapan: Pengendalian ralat boleh dilakukan dalam beberapa cara:

Menggunakan panggil balik dengan corak ralat pertama (panggilan balik(err, hasil))
Menggunakan Promises dengan .catch() untuk janji yang ditolak
Menggunakan cuba...tangkap blok dengan async/menunggu
Menggunakan perisian tengah dalam Express.js untuk mengendalikan ralat

13. Quel est le but du fichier package.json ?

Réponse : package.json est un fichier manifeste dans un projet Node.js qui contient des métadonnées sur le projet et ses dépendances. Il définit le nom du projet, la version, le point d'entrée principal, les scripts, les dépendances, les devDependencies et d'autres configurations.

  1. Comment sécuriser une application Node.js ? Réponse : Utilisez HTTPS pour une communication sécurisée. Mettez en œuvre la validation et la désinfection des données pour empêcher l’injection SQL et les scripts intersites (XSS). Utilisez des mécanismes d'authentification et d'autorisation forts (par exemple, JWT). Sécurisez les données sensibles à l’aide de variables d’environnement et d’un stockage sécurisé. Empêchez les attaques DOS avec une limitation de débit et des délais d'attente. Gardez vos packages à jour et utilisez des outils d'audit comme npm audit.

15. Quelle est la différence entre fs.readFile() et fs.createReadStream() ?

*Réponse : * fs.readFile() lit l'intégralité du fichier en mémoire, puis exécute le rappel avec le contenu du fichier.
fs.createReadStream() lit le fichier par morceaux, ce qui le rend plus efficace en termes de mémoire pour les fichiers volumineux, car il diffuse les données plutôt que de les charger en une seule fois.

Atas ialah kandungan terperinci Soalan Temuduga NODE.... Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn