Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore kunci jawaban

kunci jawaban

Published by Nci Yunita, 2022-05-26 04:19:52

Description: kunci jawaban

Search

Read the Text Version

Kategori : Introduction to JavaScript 1. Manakah dari kode berikut ini yang merupakan kode JavaScript untuk mencetak “Dicoding” ke konsol? A print(“Dicoding”); B console.log(“Dicoding”); C cout << “Dicoding”; D echo “Dicoding”; Benar Kategori : JavaScript Fundamentals 2. Di antara tipe data berikut ini manakah yang tidak termasuk tipe data primitif? A String B Object C Null D Symbol Kategori : JavaScript Fundamentals 3. Perhatikan kode berikut: const stock = 0; const milkNeeded = 25; if (stock > milkNeeded) { stock = stock - milkNeeded; console.log('Processing your order...'); } else { console.log('Out of Stock!'); }

console.log('Thank you'); Output dari program di atas adalah... A Out of Stock! Thank you B Processing your order... Thank you C Out of Stock! D Processing your order... Benar Kategori : JavaScript Fundamentals 4. Manakah pernyataan berikut ini yang benar terkait if statement? A Kita bisa menambahkan blok kode if di dalam if. B Kode if harus diikuti dengan else. C Statement if hanya bisa melakukan maksimal 3 pengecekan kondisi. D Statement if hanya bisa melakukan pengecekan untuk variabel boolean. Kategori : Data Structure 5. Diberikan sejumlah elemen yang harus disimpan secara berurutan. Manakah struktur data yang akan Anda gunakan? A Map B Set C

Object D Array Benar Kategori : Data Structure 6. Manakah output dari kode berikut: const oneTwoThree = [1, 2, 3]; const sevenEightNine = [7, 8, 9]; const result = [4, 5, 6, ...oneTwoThree, ...sevenEightNine]; console.log(result); A [1, 2, 3, 4, 5, 6, 7, 8, 9] B [4, 5, 6, 1, 2, 3, 7, 8, 9] C [4, 5, 6, 7, 8, 9, 1, 2, 3] DError Benar Kategori : Set Environment 7. Bagaimanakah karakteristik API pada Node.js? A Asynchronous B Synchronous C Semua benar D Semua salah Benar Kategori : Error Handling 8. Manakah keyword berikut ini yang digunakan untuk membuat error secara manual?

A try B catch C throw D finally Benar Kategori : Concurrency 9. Perhatikan kode berikut: function fetchUsername() { return new Promise((resolve, reject) => { setTimeout(() => { resolve('JSUser'); }, 3000); }) } console.log(\"Fetching username...\"); fetchUsername().then((value) => { console.log(`You are logged in as ${value}`); }) .finally(() => { console.log(\"Welcome!\"); }) Output ketika kode di atas dijalankan adalah... A Fetching username... Welcome! B Fetching username... Welcome! You are logged in as JSUser C Fetching username... You are logged in as JSUser Welcome! D

You are logged in as JSUser Fetching username... Welcome! Benar Kategori : Concurrency 10. Perhatikan kode berikut: function main() { try { console.log(\"Fetching username...\"); const username = await fetchUsername(); console.log(`You are logged in as ${username}`); console.log(\"Welcome!\"); } catch(e) { console.log(\"Username tidak ditemukan\"); } } Kode di atas ternyata eror ketika dijalankan. Apa penyebabnya? A Fungsi fetchUsername mengembalikan status completed with error. B Terdapat eror pada sintaks try-catch. C Variabel username bukan berupa String, sehingga eror ketika ditampilkan bersama dengan String. D Fungsi main belum ditambahkan keyword async. Kategori : Concurrency 11. Bagaimana cara menangani kondisi onRejected pada sintaksis async-await? A Dibiarkan saja. async-await otomatis menangani kondisi eror. B Menggunakan metode catchError. C Membuat variabel boolean yang menyimpan status dari Promise. D

Menggunakan sintaks try-catch. Salah Kategori : Module 12. Berikut ini adalah alasan untuk menerapkan module pada project JavaScript, kecuali... A Memudahkan dalam menemukan bug yang terjadi pada kode. B Membagi program menjadi bagian-bagian terpisah berdasarkan fungsionalitasnya. C Mengorganisir project sehingga lebih mudah dalam pengelolaannya. D Membebaskan program dari adanya error/bug. Kategori : Module 13. Cara yang tepat untuk meng-export beberapa nilai sekaligus dalam module adalah ... A Menginisialisasikan setiap nilai yang ingin di-export pada properti module.exports. B Menyimpan setiap nilai pada object literals. C Tidak bisa. Module hanya bisa meng-export satu nilai. D Membuat fungsi pada file module lalu dipanggil dari file yang akan menggunakannya. Kategori : Functional Programming (FP) 14. Berikut ini yang bukan merupakan karakteristik dari functional programming, adalah... A Polymorphism

B Immutability C Pure Function D Higher-order Benar Kategori : Object-Oriented Programming (OOP) 15. Berikut ini adalah pilar-pilar OOP, kecuali… A Abstraction B Inheritance C Reusability D Polymorphism Benar Kategori : Object-Oriented Programming (OOP) 16. Di antara pilihan berikut manakah yang tepat untuk menjadi method dari class Vehicle? A numberOfTyres & brake B color & numberOfTyres C turnLeft & turnRight D accelerate & numberOfSeats Kategori : Object-Oriented Programming (OOP)

17. Istilah pewarisan pada paradigma Object Oriented Programming biasa dikenal dengan… A Extensions B Inheritance C Abstraction D Overriding Benar Kategori : Error Handling 18. Perhatikan kode berikut: class MyCustomError extends Error { constructor(message) { super(message); this.name = \"MyError\"; } } try { throw new MyCustomError(\"This is an error\"); } catch (e) { console.log(e.message); } Output ketika kode di atas dijalankan adalah... A MyCustomError B This is an error C MyError D Aplikasi tidak bisa dijalankan Benar Kategori : Set Environment

19. Untuk menjalankan kode pada berkas exam.js. Perintah mana yang digunakan? A run node exam.js B run exam.js C node exam.js D node run exam.js Benar Kategori : Introduction to JavaScript 20. JavaScript termasuk ke dalam scripting language, apa maksudnya? A Tidak perlu dikompilasi agar bisa dijalankan. B Pemrograman yang bisa merepresentasikan objek dunia nyata ke dalam program. C Perlu mendefinisikan variabel sebelum bisa menggunakannya. D Tidak perlu mendefinisikan tipe data variabel secara eksplisit. Kategori : JavaScript Fundamentals 21. Perhatikan kode berikut: const name = 'Dicoding'; const language = 'JavaScript'; console.log(`Hello $name. Welcome to $language!`); Apakah yang akan ditampilkan pada konsol ketika kode dijalankan? A Hello $name. Welcome to $language! B Hello Dicoding. Welcome to JavaScript!

C Hello JavaScript. Welcome to Dicoding! D Error Kategori : Data Structure 22. Anda memiliki array yang berisi 10 elemen. Bagaimana Anda menampilkan elemen ke-7? A console.log(myArr[6]); B console.log(myArr[7]); C console.log(myArr[8]); D console.log(myArr.get(7)); Kategori : Functions 23. Perhatikan kode berikut: function multiply(num) { total = num * num; } const result = multiply(3); console.log(result); Manakah output yang tepat ketika kode di atas dijalankan? A result B 9 C undefined D Error

Salah Kategori : Functional Programming (FP) 24. Apakah yang dimaksud dengan higher-order function? A Fungsi yang dipanggil dari dalam fungsi itu sendiri. B Fungsi yang tidak memiliki nama. C Fungsi yang menggunakan fungsi lainnya sebagai parameter. D Fungsi yang tidak mengembalikan nilai. Benar Kategori : Error Handling 25. Manakah keyword berikut ini yang digunakan untuk mendapatkan tipe dari eror yang terjadi? A catch B instanceOf C prototype D typeOf Kategori : Node Package Manager 26. Ketika menambahkan package dengan NPM menggunakan perintah: npm install <package-name> --save-dev Di manakah package tersebut akan disimpan? A Pada folder instalasi npm. B Pada folder node_modules.

C Pada folder node_modules/dev. D Pada folder dev/node_modules. Kategori : Node Package Manager 27. Berikut ini adalah pernyataan yang tepat mengenai dev dependencies, kecuali... A Cara menginstalnya adalah dengan menambahkan parameter --save-dev. B Package ini hanya digunakan pada saat proses development. C Informasi mengenai versi package disimpan dalam object devDependencies pada file package.json. D Secara default package npm yang ditambahkan termasuk dalam dev dependencies. Kategori : Testing 28. Berikut ini adalah beberapa alasan kenapa kita perlu menerapkan automated testing, kecuali... A Mengatasi testing manual yang rawan akan kesalahan. B Meningkatkan kecepatan dan performa aplikasi. C Penghematan biaya waktu (time cost) pada pengembangan aplikasi. D Memastikan kualitas kode yang minim dari bug. Salah Kategori : Testing 29. Anda memiliki skenario pengujian seperti berikut:

test('should return the minimum number between 3 arguments', () => { expect(findMin(1, 2, 3)).toEqual(1); expect(findMin(5, 1, 2)).toEqual(1); expect(findMin(102, 404, 48)).toEqual(48); expect(findMin(-1, 0, -1)).toEqual(-1); expect(findMin(2, 2, 2)).toEqual(2); }); Ada banyak cara atau algoritma untuk memenuhi skenario di atas. Pilihlah fungsi yang gagal memenuhi pengujian tersebut! A function findMin(a, b, c) { if (a < b && a < c ) { return a; } else if (b < a && b < c) { return b; } else { return c; } } B function findMin(a, b, c) { let minValue = a; if (a < b) { minValue = a; } else { minValue = b; } if (c < minValue) { minValue = c; } return minValue; } C function findMin(a, b, c) { if (a < b) { if (a < c) { return a; } else { return c; } } else if (b < a) { if (b < c) { return b; } else { return c; } } else { return c; } }

D function findMin(a, b, c) { let minValue = 0; if (a < b) { minValue = a; } else if (b < c) { minValue = b; } else { minValue = c; } return minValue; } Benar Kategori : Functions 30. Perhatikan kode berikut: function minMax(arrayOfNumbers) { let currentMin = arrayOfNumbers[0]; let currentMax = arrayOfNumbers[0]; for (value of arrayOfNumbers) { if (value < currentMin) { currentMin = value; } else if (value > currentMax) { currentMax = value; } } console.log(`currentMin: ${currentMin}, currentMax: ${currentMax}`); } minMax([8, -6, 0, 9, 40, 2, 23, 50, 2, -3, -15, 15, -23, 71]); Jika kode di atas dijalankan, maka outputnya adalah... A currentMin: -23, currentMax: 71 B currentMin: -71, currentMax: 23 C currentMin: 47, currentMax: 220 D currentMin: -220, currentMax: 47 Benar Kategori : Introduction to JavaScript

31. Dari tiga bahasa utama untuk mengembangkan sebuah website, apakah peran dari JavaScript? A Menambahkan fitur dan fungsionalitas tambahan supaya website menjadi lebih interaktif. B Menampilkan informasi berupa teks atau gambar ke dalam website. C Memberikan desain (style) pada website supaya tampilannya menjadi lebih menarik. D Menambahkan aspek keamanan pada website supaya tidak mudah diserang hacker. Kategori : Data Structure 32. Terdapat array seperti berikut: const phoneticAlphabet = [\"Alpha\", \"Bravo\", \"Delta\"]; // TODO: Kode untuk menambahkan item Charlie pada index ke-2 console.log(phoneticAlphabet); Manakan kode yang perlu Anda tambahkan pada TODO supaya array phoneticAlphabet akan menampilkan output: [ 'Alpha', 'Bravo', 'Charlie', 'Delta' ] ? A phoneticAlphabet.push(“Charlie”); B phoneticAlphabet.unshift(“Charlie”); C phoneticAlphabet.splice(2, 1, “Charlie”); D phoneticAlphabet.splice(2, 0, “Charlie”); Perhatikan kode berikut: let myString = \"\"; try { myString += \"a\"; throw Error(); } catch(e) {

myString += \"b\"; } finally { myString += \"c\"; throw Error(); myString += \"d\"; } console.log(myString); Apakah output dari program di atas? A a B abcd C abc D Error Kategori : JavaScript Fundamentals 33. Perhatikan kode berikut: if ((true || false) && (false || false)) { console.log(\"It's true\"); } else { console.log(\"It's false\"); } Output dari program di atas adalah... A It's false B It's true Perhatikan potongan kode berikut: const capital = { \"Jakarta\": \"Indonesia\", \"London\": \"England\", \"Tokyo\": \"Japan\" } capital[\"New Delhi\"] = \"Indonesia\"; console.log(capital[\"Indonesia\"]); Ketika kode di atas dijalankan, maka outputnya adalah... A

Jakarta B India C undefined D Error Kategori : Functions Manakah dari pilihan berikut ini cara yang salah untuk mendeklarasikan fungsi pada JavaScript? A function sayHello() {} B const sayHello = () => {} C const sayHello = function() {} D Semua benar Kategori : Functions 34. Manakah dari pilihan berikut ini cara yang salah untuk mendeklarasikan fungsi pada JavaScript? A function sayHello() {} B const sayHello = () => {} C const sayHello = function() {} D Semua benar Kategori : Functional Programming (FP) Apakah yang dimaksud dengan Functional Programming?

A Paradigma pemrograman yang menggunakan pernyataan (statements) untuk mengubah status program. B Paradigma pemrograman yang didasarkan pada konsep objek yang berisi data dalam bentuk field atau method. C Paradigma pemrograman yang berdasarkan konsep pemanggilan prosedur. D Paradigma pemrograman di mana proses komputasi didasarkan pada fungsi matematika murni. Berikut ini adalah aplikasi text editor yang bisa digunakan untuk mengembangkan aplikasi dengan JavaScript, kecuali... A Visual Studio Code B Microsoft Word C Notepad D Nano Kita dapat membuat kelas error sendiri dengan melakukan pewarisan pada kelas…. A Error B BaseError C Problem D Exception

Kategori : Node Package Manager Manakah dari pilihan berikut ini yang bukan merupakan fungsi file package-lock.json? A Menentukan versi package yang digunakan dengan lebih spesifik. B Menyimpan informasi package global yang digunakan. C Mendeskripsikan susunan dependency dari satu package ke package lainnya. D Menyimpan informasi keseluruhan package yang digunakan. 35. Manakah output yang tepat dari kode berikut? let myVariable = 12; myVariable = 30; myVariable = 5; console.log(myVariable); A 12 B 30 C 5 D Error Kategori : JavaScript Fundamentals Manakah di antara kode berikut ini yang tidak menampilkan output: 1 3 5 7 9 A for(let i = 0; i < 10; i++) { if (i % 2 !== 0) {

console.log(i); } } B for(let i = 1; i < 9; i += 2) { console.log(i); } C for(let i = 1; i < 10; i += 2) { console.log(i); } D console.log(1); console.log(3); console.log(5); console.log(7); console.log(9); 36. Berapa banyak parameter yang bisa dimiliki oleh suatu function? A Hanya satu B Bisa satu atau dua C Minimal tiga D Sesuai kebutuhan Kategori : Error Handling Perhatikan kode berikut: try { const arr = [1, 2, 3, 4]; for (let i = 0; i <= 4; i++) { console.log(arr[i]); } } catch(e) { console.log(\"Out of bounds\"); } Output yang akan dihasilkan ketika kode di atas dijalankan adalah... A

Out of bounds B 1 2 3 4 C 1 2 3 4 Out of bounds D 1 2 3 4 undefined Kategori : Concurrency Metode yang digunakan untuk menangani data yang diterima dari Promise, adalah… A setTimeout B then C catch D finally Apakah format yang digunakan untuk mengelola package pada NPM? A JS B JSON C

YAML D NPM Berikut ini adalah alasan untuk menerapkan module pada project JavaScript, kecuali... A Memudahkan dalam menemukan bug yang terjadi pada kode. B Membebaskan program dari adanya error/bug. C Mengorganisir project sehingga lebih mudah dalam pengelolaannya. D Membagi program menjadi bagian-bagian terpisah berdasarkan fungsionalitasnya.


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook