Skip to content

Instantly share code, notes, and snippets.

@argf013
Last active July 2, 2025 21:26
Show Gist options
  • Select an option

  • Save argf013/2b8b08414edb499eccb2940127a8f939 to your computer and use it in GitHub Desktop.

Select an option

Save argf013/2b8b08414edb499eccb2940127a8f939 to your computer and use it in GitHub Desktop.
Catatan Ringkas Dasar JavaScript: Math, Array, dan Struktur Data

Fungsi Math()

  • Math.floor(): Membulatkan angka ke bawah ke bilangan bulat terdekat.

    • Contoh: Math.floor(4.9) hasilnya 4
  • Math.ceil(): Membulatkan angka ke atas ke bilangan bulat terdekat.

    • Contoh: Math.ceil(4.1) hasilnya 5
  • Math.round(): Membulatkan angka ke bilangan bulat terdekat.

    • Contoh: Math.round(4.4)4, Math.round(4.7)5
  • Math.abs(): Mengubah angka negatif jadi positif.

    • Contoh: Math.abs(-10)10
  • Math.min(): Menemukan nilai paling kecil dari beberapa angka.

    • Contoh: Math.min(4, 7, 5)4
  • Math.max(): Menemukan nilai paling besar dari beberapa angka.

    • Contoh: Math.max(4, 7, 5)7
  • Math.sqrt(): Menghitung akar kuadrat dari suatu angka.

    • Contoh: Math.sqrt(25)5
  • Math.pow(): Menghitung pangkat dari suatu angka.

    • Contoh: Math.pow(2, 3) artinya 2 pangkat 3 → 8
  • Math.trunc(): Menghilangkan angka di belakang koma, tanpa dibulatkan.

    • Contoh: Math.trunc(4.9)4, Math.trunc(-4.5)-4
  • Math.random(): Menghasilkan angka desimal acak antara 0 dan kurang dari 1.

    • Contoh hasil: 0.7462

Konsep Matematika & Struktur Data

  • Bilangan Prima: Angka lebih dari 1 yang hanya bisa dibagi oleh 1 dan dirinya sendiri.

    • Contoh: 2, 3, 5, 7
  • Faktor: Angka yang bisa membagi habis angka lain.

    • Contoh: Faktor dari 6 adalah 1, 2, 3, 6
  • Modulus (%): Operator untuk mencari sisa pembagian.

    • Contoh: 5 % 21

    • Berguna untuk:

      • Cek ganjil/genap: x % 2 === 0 → genap
      • Cek kelipatan: x % n === 0
      • Cek faktor atau bilangan prima
  • Rekursif: Fungsi yang memanggil dirinya sendiri untuk menyelesaikan masalah.

    • Faktorial:

      function factorial(n) {
        if (n === 1) return 1;
        return n * factorial(n - 1);
      }
    • Fibonacci:

      function fibonacci(n) {
        if (n < 2) return n;
        return fibonacci(n - 1) + fibonacci(n - 2);
      }
    • Tree Traversal: Menelusuri isi folder sampai ke dalam

    • Array Flattening: Mengubah array bersarang jadi datar

      • Contoh: [1, [2, [3]]][1, 2, 3]

Fungsi Array

  • map(): Mengubah setiap item di array jadi bentuk baru.

    • Contoh: [1, 2, 3].map(x => x * 2)[2, 4, 6]
  • filter(): Mengambil item yang lolos kondisi.

    • Contoh: [1, 2, 3].filter(x => x % 2 === 0)[2]
  • reduce(): Menggabungkan semua item jadi satu nilai.

    • Contoh: [1, 2, 3].reduce((a, b) => a + b, 0)6
  • find(): Mengambil item pertama yang cocok.

    • Contoh: [1, 2, 3].find(x => x > 1)2
  • some(): Cek apakah ada minimal 1 item yang sesuai kondisi.

    • Contoh: [1, 2, 3].some(x => x > 2)true
  • every(): Cek apakah semua item memenuhi kondisi.

    • Contoh: [1, 2, 3].every(x => x > 0)true
  • includes(): Cek apakah array berisi nilai tertentu.

    • Contoh: [1, 2, 3].includes(2)true
  • indexOf(): Mencari posisi pertama dari suatu nilai.

    • Contoh: ["a", "b", "c"].indexOf("b")1
  • sort(): Mengurutkan isi array. Default urut string, bisa custom.

    • Contoh: [3, 1, 2].sort((a, b) => a - b)[1, 2, 3]
  • reverse(): Membalik urutan array.

    • Contoh: [1, 2, 3].reverse()[3, 2, 1]

Manipulasi Array Lanjutan

  • slice(start, end): Mengambil sebagian isi array, tanpa mengubah aslinya.

    • Contoh: [10, 20, 30, 40].slice(1, 3)[20, 30]
  • splice(start, count): Menghapus/tambah item, dan mengubah array asli.

    • Contoh: ['a','b','c'].splice(1, 2)['b','c'], array menjadi ['a']
  • concat(): Menggabungkan dua array jadi satu.

    • Contoh: [1,2,3].concat([4,5])[1,2,3,4,5]
  • flat(depth): Membuka array bersarang.

    • Contoh: [1, [2, [3]]].flat(2)[1,2,3]
  • repeat(n): Mengulang string sebanyak n kali.

    • Contoh: 'a'.repeat(3)'aaa'

Contoh membuat segitiga bintang:

function printSegitiga(n) {
  for (let i = 1; i <= n; i++) {
    console.log('*'.repeat(i));
  }
}

Method Tambahan Array

  • join(separator): Gabung semua item jadi string, bisa pakai pemisah.

    • Contoh: ['a','b','c'].join('-')'a-b-c'
  • push(): Tambah item ke akhir array, hasilnya panjang baru.

  • pop(): Hapus item terakhir dari array, hasilnya item tersebut.

  • shift(): Hapus item pertama dari array.

  • unshift(): Tambah item di awal array.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment