Pengenalan JavaScript untuk Algoritma – Perwira Learning Center

 

1. LATAR BELAKANG

    Pada hari ini, saya mempelajari peran JavaScript sebagai alat untuk mengembangkan kemampuan algoritmik. Sebagai siswa SMK yang baru memasuki dunia pemrograman, saya perlu memahami bahwa belajar algoritma tidak harus dimulai dengan bahasa pemrograman yang kompleks. JavaScript, yang selama ini dikenal sebagai bahasa untuk pembuatan website, ternyata memiliki potensi besar sebagai media pembelajaran logika dan pemecahan masalah.

    Pembelajaran ini difokuskan pada pengenalan konsep dasar algoritma dan bagaimana JavaScript dapat menjadi alat yang efektif untuk menerapkan konsep tersebut. Dengan pendekatan industrial-based learning, saya belajar bahwa kemampuan algoritmik merupakan fondasi penting sebelum terjun ke pembuatan aplikasi yang kompleks, baik di bidang Software Development maupun Cloud Computing.

 

2. ALAT DAN BAHAN

  1. Visual Studio Code - Text editor untuk menulis dan mengelola kode JavaScript
  2. Node.js - Runtime environment untuk menjalankan JavaScript di server-side
  3. Google Chrome - Browser untuk menguji kode di console developer tools

 

3. PEMBAHASAN

3.1 Pengertian Algoritma

Algoritma adalah urutan langkah-langkah logis dan sistematis untuk menyelesaikan suatu masalah. Dalam konteks pemrograman, algoritma berperan sebagai "resep" yang memberitahu komputer bagaimana melakukan suatu tugas.

Ciri-ciri algoritma yang baik:

  1. Jelas (Definiteness) - Setiap langkah tidak ambigu
  2. Runtut (Sequence) - Ada urutan eksekusi yang logis
  3. Memiliki Input - Menerima data masukan
  4. Memiliki Output - Menghasilkan keluaran
  5. Terbatas (Finiteness) - Memiliki titik berhenti yang jelas
  6. Efektif - Setiap langkah dapat dieksekusi

Contoh algoritma sederhana dalam kehidupan sehari-hari:

text
Algoritma Memasak Air:
1. Ambil panci
2. Isi dengan air
3. Letakkan di kompor
4. Nyalakan api
5. Tunggu hingga mendidih
6. Matikan api

3.2 Pengenalan JavaScript

JavaScript pertama kali diciptakan pada tahun 1995 oleh Brendan Eich saat bekerja di perusahaan Netscape Communications. Bahasa pemrograman ini dibuat dalam waktu yang sangat singkat, sekitar 10 hari, dengan tujuan untuk membuat halaman web menjadi lebih interaktif, bukan hanya menampilkan konten statis. Awalnya JavaScript diberi nama Mocha, kemudian LiveScript, dan akhirnya diubah menjadi JavaScript sebagai strategi pemasaran, meskipun tidak memiliki hubungan langsung dengan bahasa pemrograman Java. JavaScript dirancang agar mudah dipelajari dan dapat dijalankan langsung di browser web. Namun kini JavaScript telah berkembang menjadi bahasa multi-paradigma yang dapat digunakan untuk:

  1. Web Development - Frontend dan backend (dengan Node.js)
  2. Mobile Development - Menggunakan framework seperti React Native
  3. Desktop Applications - Menggunakan Electron
  4. Game Development - Membuat game berbasis browser
  5. IoT Programming - Mengontrol perangkat Internet of Things

3.3 JavaScript sebagai Alat Algoritma

Kenapa JavaScript cocok untuk belajar algoritma?

  1. Sintaks Sederhana - Mirip bahasa Inggris, mudah dipahami pemula
  2. Tidak Perlu Kompilasi - Bisa langsung dijalankan (interpreted language)
  3. Fleksibel - Bisa dijalankan di browser tanpa instalasi khusus
  4. Feedback Cepat - Hasil kode langsung terlihat di console
  5. Multi-paradigma - Mendukung pemrograman prosedural, OOP, dan fungsional

Hubungan logika algoritma dengan sintaks JavaScript:

Setiap konsep algoritma memiliki padanan dalam JavaScript:

  • Penyimpanan data → Variabel (let, const)
  • Pengambilan keputusan → Percabangan (if-else, switch)
  • Pengulangan tugas → Looping (for, while)
  • Pengelompokan kode → Function
  • Struktur data → Array, Object

3.4 Struktur Dasar JavaScript untuk Algoritma

Variabel dan Tipe Data

Variabel adalah tempat menyimpan data, seperti kotak penyimpanan yang memiliki nama. JavaScript memiliki beberapa tipe data dasar:

javascript
// Contoh variabel dengan berbagai tipe data
let nama = "Ibra";          // String - untuk teks
let umur = 17;              // Number - untuk angka
let isStudent = true;       // Boolean - untuk true/false
let hobi = ["coding", "game"]; // Array - untuk kumpulan data
let siswa = {               // Object - untuk data terstruktur
    nama: "Ibra",
    kelas: "XII RPL 1"
};

Operator

Operator digunakan untuk melakukan operasi pada data:

javascript
// Operator Aritmatika
let hasil = 10 + 5;     // Penjumlahan
let selisih = 10 - 5;   // Pengurangan
let kali = 10 * 5;      // Perkalian
let bagi = 10 / 5;      // Pembagian

// Operator Perbandingan
let lebihBesar = 10 > 5;    // true
let samaDengan = 10 == 10;  // true

// Operator Logika
let kondisi1 = true;
let kondisi2 = false;
let hasilAND = kondisi1 && kondisi2;  // false (AND)
let hasilOR = kondisi1 || kondisi2;   // true (OR)

Percabangan (If-Else)

Digunakan untuk pengambilan keputusan berdasarkan kondisi:

javascript
// Contoh algoritma menentukan nilai kelulusan
let nilai = 85;

if (nilai >= 75) {
    console.log("LULUS");
} else {
    console.log("TIDAK LULUS");
}

// Percabangan bertingkat
if (nilai >= 90) {
    console.log("Grade: A");
} else if (nilai >= 80) {
    console.log("Grade: B");
} else if (nilai >= 70) {
    console.log("Grade: C");
} else {
    console.log("Grade: D");
}

Perulangan (Looping)

Digunakan untuk mengulangi tugas yang sama:

javascript
// For loop - ketika tahu berapa kali pengulangan
console.log("Menghitung 1 sampai 5:");
for (let i = 1; i <= 5; i++) {
    console.log("Angka: " + i);
}

// While loop - ketika tidak tahu berapa kali, tapi tahu kapan berhenti
let hitungan = 1;
console.log("\nWhile loop contoh:");
while (hitungan <= 3) {
    console.log("Iterasi ke-" + hitungan);
    hitungan++;
}

Fungsi

Fungsi adalah kumpulan perintah yang dapat dipanggil berulang kali:

javascript
// Fungsi untuk menyapa
function sapa(nama) {
    return "Halo, " + nama + "! Selamat belajar JavaScript!";
}

// Memanggil fungsi
console.log(sapa("Ibra"));      // Halo, Ibra! Selamat belajar JavaScript!
console.log(sapa("Teman-teman")); // Halo, Teman-teman! Selamat belajar JavaScript!

// Fungsi dengan parameter dan return value
function tambah(a, b) {
    return a + b;
}

let hasilTambah = tambah(5, 3);
console.log("5 + 3 = " + hasilTambah); // 8

3.5 Contoh Penerapan Algoritma

Algoritma Penjumlahan Sederhana

javascript
// Algoritma: Menjumlahkan dua bilangan
function jumlahkan(angka1, angka2) {
    let hasil = angka1 + angka2;
    return hasil;
}

// Penggunaan
console.log("10 + 5 = " + jumlahkan(10, 5));  // 15
console.log("7 + 3 = " + jumlahkan(7, 3));    // 10

Algoritma Penentuan Bilangan Ganjil-Genap

javascript
// Algoritma: Menentukan apakah bilangan ganjil atau genap
function cekGanjilGenap(bilangan) {
    if (bilangan % 2 === 0) {
        return "GENAP";
    } else {
        return "GANJIL";
    }
}

// Penggunaan
console.log("10 adalah bilangan: " + cekGanjilGenap(10));  // GENAP
console.log("7 adalah bilangan: " + cekGanjilGenap(7));    // GANJIL
console.log("0 adalah bilangan: " + cekGanjilGenap(0));    // GENAP

Algoritma Perulangan Data

javascript
// Algoritma: Menampilkan semua item dalam array
let daftarBuah = ["Apel", "Jeruk", "Mangga", "Pisang"];

console.log("Daftar Buah:");
for (let i = 0; i < daftarBuah.length; i++) {
    console.log((i + 1) + ". " + daftarBuah[i]);
}

// Output:
// 1. Apel
// 2. Jeruk
// 3. Mangga
// 4. Pisang

3.6 Kelebihan JavaScript untuk Belajar Algoritma

  1. Sintaks Sederhana dan Mudah Dibaca 
    • Mirip bahasa manusia
    • Tidak terlalu banyak simbol kompleks
    • Error messages yang informatif
  2. Bisa Langsung Dicoba di Browser 
    • Cukup tekan F12 → Console
    • Tidak perlu instalasi khusus
    • Cocok untuk eksperimen cepat
  3. Cocok untuk Pemula 
    • Learning curve yang landai
    • Banyak resources belajar gratis
    • Komunitas besar dan supportive
  4. Membuka Pintu ke Berbagai Area 
    • Web Development
    • Mobile Apps
    • Backend Programming
    • Game Development

3.7 Kendala dan Solusi

Kendala yang dihadapi:

  1. Awalnya bingung dengan perbedaan == dan === dalam JavaScript
  2. Terkadang lupa menggunakan titik koma (;) di akhir statement
  3. Bingung kapan menggunakan let, const, atau var

Solusi yang diterapkan:

  1. Membaca dokumentasi MDN tentang perbandingan strict vs loose equality
  2. Menggunakan extension ESLint di VS Code untuk auto-formatting
  3. Membuat catatan tentang scope dan penggunaan masing-masing deklarasi variabel
  4. Konsultasi dengan mentor PLC ketika menemui kesulitan 

4. KESIMPULAN

Berdasarkan pembahasan yang telah saya sampaikan, JavaScript terbukti merupakan bahasa pemrograman yang sangat efektif untuk digunakan sebagai alat pembelajaran algoritma, khususnya bagi siswa SMK yang baru mengenal dunia pemrograman. Melalui sintaks yang sederhana, fleksibel, dan dapat langsung dijalankan, JavaScript membantu memahami konsep dasar algoritma seperti variabel, operator, percabangan, perulangan, dan fungsi secara lebih konkret dan aplikatif. Materi yang dibahas dalam artikel ini telah mencakup fondasi penting algoritmik serta menunjukkan keterkaitan antara logika berpikir sistematis dan implementasinya dalam kode JavaScript, sehingga dapat menjadi bekal awal yang kuat sebelum mempelajari pengembangan aplikasi yang lebih kompleks di bidang software development maupun teknologi berbasis cloud.

 

5. DAFTAR PUSTAKA

  1. Petani Kode. (2018). Pemrograman Javacsript: Langkah Awal Belajar Javascript. https://www.petanikode.com
  2. Universitas Negeri Surabaya. (2025). Pengenalan Javacsript dan Perannya dalam Pengembangan Web Modern. https://terapan-ti.vokasi.unesa.ac.id
  3. Dicoding. (2020). Apa Itu Javascript? Fungsi dan Contohnya. https://www.dicoding.com
  4. W3Schools. (n.d.). JavaScript Tutorial. Diakses dari https://www.w3schools.com/js/
  5. freeCodeCamp. (2022). Introduction to Algorithms Handbook - with JavaScript Exampleshttps://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/
  6. Primakara. (2023). Panduan Belajar JavaScript. https://primakara.ac.id

Posting Komentar

0 Komentar