JS DOCS

STRING

.length
Description: Mengembalikan panjang string.
Example:
"hello".length
Output: 5
.charAt(index)
Description: Mengembalikan karakter pada posisi index.
Example:
"hello".charAt(1)
Output: "e"
.at(index)
Description: Mengembalikan karakter pada index. Bisa negatif.
Example:
"hello".at(-1)
Output: "o"
.concat(str)
Description: Menggabungkan string.
Example:
"Hello".concat(" World")
Output: "Hello World"
.includes(str)
Description: Mengecek apakah string mengandung substring.
Example:
"hello".includes("ll")
Output: true
.indexOf(str)
Description: Index pertama substring. -1 jika tidak ditemukan.
Example:
"hello".indexOf("l")
Output: 2
.lastIndexOf(str)
Description: Index terakhir substring. -1 jika tidak ditemukan.
Example:
"hello".lastIndexOf("l")
Output: 3
.slice(start, end)
Description: Potong string. Support negatif.
Example:
"hello".slice(1, 3)
Output: "el"
.substring(start, end)
Description: Potong string dari start sampai end.
Example:
"hello".substring(1, 3)
Output: "el"
.substr(start, length)
Description: Potong string mulai dari start sebanyak length karakter. (Deprecated)
Example:
"hello".substr(1, 3)
Output: "ell"
.toUpperCase()
Description: Ubah ke huruf besar.
Example:
"hello".toUpperCase()
Output: "HELLO"
.toLowerCase()
Description: Ubah ke huruf kecil.
Example:
"HELLO".toLowerCase()
Output: "hello"
.trim()
Description: Hapus spasi awal dan akhir.
Example:
"  hi  ".trim()
Output: "hi"
.trimStart()
Description: Hapus spasi di awal.
Example:
"  hi  ".trimStart()
Output: "hi "
.trimEnd()
Description: Hapus spasi di akhir.
Example:
"  hi  ".trimEnd()
Output: " hi"
.split(separator)
Description: Pecah string jadi array.
Example:
"a,b,c".split(",")
Output: ["a","b","c"]
.replace(old, new)
Description: Ganti substring pertama ditemukan.
Example:
"haha".replace("ha", "he")
Output: "heha"
.replaceAll(old, new)
Description: Ganti semua substring.
Example:
"haha".replaceAll("ha", "he")
Output: "hehe"
.startsWith(str)
Description: Mengecek apakah string diawali substring tertentu.
Example:
"hello".startsWith("he")
Output: true
.endsWith(str)
Description: Mengecek apakah string diakhiri substring tertentu.
Example:
"hello".endsWith("lo")
Output: true
.padStart(targetLength, padString)
Description: Menambah karakter di awal sampai panjang tertentu.
Example:
"5".padStart(3, "0")
Output: "005"
.padEnd(targetLength, padString)
Description: Menambah karakter di akhir sampai panjang tertentu.
Example:
"5".padEnd(3, "0")
Output: "500"
.repeat(count)
Description: Mengulang string beberapa kali.
Example:
"ha".repeat(3)
Output: "hahaha"
.match(regex)
Description: Mencari kecocokan string dengan regex.
Example:
"hello".match(/l/g)
Output: ["l","l"]
.matchAll(regex)
Description: Mencari semua kecocokan regex (iterator).
Example:
for (const m of "hello".matchAll(/l/g)) console.log(m)
Output: iterator
.search(regex)
Description: Mencari index pertama yang cocok dengan regex.
Example:
"hello".search(/ll/)
Output: 2

ARRAY — STATIC

Array.from(iterable)
Description: Membuat array dari iterable atau array-like.
Example:
Array.from('hello')
Output: ['h','e','l','l','o']
Array.isArray(val)
Description: Mengecek apakah nilai adalah array.
Example:
Array.isArray([1,2])
Output: true
Array.of(...items)
Description: Membuat array dari argumen.
Example:
Array.of(1,2,3)
Output: [1,2,3]

ARRAY — INSTANCE

.length
Description: Jumlah elemen array.
Example:
[1,2,3].length
Output: 3
.push(item)
Description: Tambah elemen ke akhir. (Mutasi)
Example:
const arr = [1]; arr.push(2); arr
Output: [1, 2]
.pop()
Description: Hapus elemen terakhir. (Mutasi)
Example:
const arr = [1,2]; arr.pop(); arr
Output: [1]
.shift()
Description: Hapus elemen pertama. (Mutasi)
Example:
const arr = [1,2]; arr.shift(); arr
Output: [2]
.unshift(item)
Description: Tambah elemen ke awal. (Mutasi)
Example:
const arr = [2]; arr.unshift(1); arr
Output: [1, 2]
.splice(start, deleteCount, ...items)
Description: Menghapus/menambah elemen di tengah. (Mutasi)
Example:
const arr = [1,2,3]; arr.splice(1,1); arr
Output: [1,3]
.reverse()
Description: Membalik urutan array. (Mutasi)
Example:
const arr = [1,2,3]; arr.reverse(); arr
Output: [3,2,1]
.sort(compareFn)
Description: Mengurutkan array. (Mutasi)
Example:
const arr = [3,1,2]; arr.sort((a,b) => a-b); arr
Output: [1,2,3]
.fill(value, start?, end?)
Description: Mengisi elemen dengan nilai statis. (Mutasi)
Example:
const arr = [1,2,3]; arr.fill(0, 1, 3); arr
Output: [1,0,0]
.copyWithin(target, start, end?)
Description: Salin bagian array ke posisi lain. (Mutasi)
Example:
const arr = [1,2,3,4]; arr.copyWithin(0, 2); arr
Output: [3,4,3,4]
.map(cb)
Description: Transform tiap elemen, return array baru.
Example:
[1,2].map(v => v*2)
Output: [2,4]
.filter(cb)
Description: Filter elemen, return array baru.
Example:
[1,2,3].filter(v => v>1)
Output: [2,3]
.find(cb)
Description: Cari elemen pertama yang cocok.
Example:
[{id:1},{id:2}].find(v => v.id>1)
Output: {id:2}
.findIndex(cb)
Description: Cari index elemen pertama yang cocok.
Example:
[{id:1},{id:2}].findIndex(v => v.id>1)
Output: 1
.findLast(cb)
Description: Cari elemen terakhir yang cocok.
Example:
[1,2,3,2].findLast(v => v===2)
Output: 2
.findLastIndex(cb)
Description: Cari index elemen terakhir yang cocok.
Example:
[1,2,3,2].findLastIndex(v => v===2)
Output: 3
.reduce(cb, init?)
Description: Akumulasi nilai. cb(acc, val, idx, arr).
Example:
[1,2,3].reduce((sum, v) => sum+v, 0)
Output: 6
.reduceRight(cb, init?)
Description: Akumulasi dari kanan.
Example:
[[1,2],[3,4]].reduceRight((flat, arr) => flat.concat(arr), [])
Output: [3,4,1,2]
.forEach(cb)
Description: Menjalankan fungsi untuk setiap elemen. Tidak menghasilkan array baru.
Example:
[1,2].forEach(v => console.log(v))
Output: void
.some(cb)
Description: Cek apakah minimal satu elemen cocok.
Example:
[1,2,3].some(v => v>2)
Output: true
.every(cb)
Description: Cek apakah semua elemen cocok.
Example:
[1,2,3].every(v => v>0)
Output: true
.includes(item)
Description: Mengecek apakah array mengandung elemen tertentu.
Example:
[1,2,3].includes(2)
Output: true
.indexOf(item)
Description: Index pertama elemen. -1 jika tidak ditemukan.
Example:
[1,2,3].indexOf(2)
Output: 1
.lastIndexOf(item)
Description: Index terakhir elemen. -1 jika tidak ditemukan.
Example:
[1,2,3,2].lastIndexOf(2)
Output: 3
.slice(start?, end?)
Description: Potong array, return array baru.
Example:
[1,2,3].slice(0, 2)
Output: [1,2]
.concat(arr)
Description: Menggabungkan array, return array baru.
Example:
[1,2].concat([3,4])
Output: [1,2,3,4]
.join(separator)
Description: Menggabungkan array menjadi string.
Example:
['a','b'].join('-')
Output: "a-b"
.flat(depth?)
Description: Meratakan array bertingkat.
Example:
[1,[2,[3]]].flat(2)
Output: [1,2,3]
.flatMap(cb)
Description: Map lalu flat satu tingkat.
Example:
[1,2].flatMap(v => [v, v*2])
Output: [1,2,2,4]
.entries()
Description: Iterator pasangan [index, value].
Example:
for (const [i,v] of ['a','b'].entries()) console.log(i,v)
Output: 0 'a' , 1 'b'
.keys()
Description: Iterator index.
Example:
Array.from(['a','b'].keys())
Output: [0,1]
.values()
Description: Iterator nilai.
Example:
Array.from(['a','b'].values())
Output: ['a','b']

OBJECT

Object.keys(obj)
Description: Array dari semua key.
Example:
Object.keys({a:1,b:2})
Output: ["a","b"]
Object.values(obj)
Description: Array dari semua value.
Example:
Object.values({a:1,b:2})
Output: [1, 2]
Object.entries(obj)
Description: Array pasangan [key, value].
Example:
Object.entries({a:1})
Output: [["a", 1]]
Object.assign(target, src)
Description: Copy properti ke target.
Example:
Object.assign({}, {a:1})
Output: {a: 1}
Object.fromEntries(entries)
Description: Ubah array entries jadi object.
Example:
Object.fromEntries([["a", 1]])
Output: {a: 1}
Object.hasOwn(obj, prop)
Description: Cek properti milik sendiri (modern).
Example:
Object.hasOwn({a:1}, 'a')
Output: true
Object.freeze(obj)
Description: Membekukan object (tidak bisa diubah).
Example:
const obj = Object.freeze({a:1}); obj.a = 2; obj.a
Output: 1
Object.seal(obj)
Description: Menyegel object (properti tidak bisa ditambah/hapus).
Example:
const obj = Object.seal({a:1}); delete obj.a; obj.a
Output: 1
Object.create(proto)
Description: Membuat object baru dengan prototipe tertentu.
Example:
Object.create(null)
Output: {} (tanpa prototype)

NUMBER

Number.isInteger(val)
Description: Cek bilangan bulat.
Example:
Number.isInteger(5)
Output: true
Number.parseInt(str)
Description: Ubah string ke integer.
Example:
Number.parseInt("42px")
Output: 42
Number.parseFloat(str)
Description: Ubah string ke float.
Example:
Number.parseFloat("3.14px")
Output: 3.14
.toFixed(digits)
Description: Format desimal menjadi string.
Example:
(3.14159).toFixed(2)
Output: "3.14"
.toPrecision(digits)
Description: Format angka ke panjang signifikan.
Example:
(3.14159).toPrecision(2)
Output: "3.1"

MATH

Math.PI
Description: Nilai pi.
Example:
Math.PI
Output: 3.14159...
Math.floor(x)
Description: Bulatkan ke bawah.
Example:
Math.floor(3.9)
Output: 3
Math.ceil(x)
Description: Bulatkan ke atas.
Example:
Math.ceil(3.1)
Output: 4
Math.round(x)
Description: Bulatkan ke terdekat.
Example:
Math.round(3.5)
Output: 4
Math.abs(x)
Description: Nilai mutlak.
Example:
Math.abs(-5)
Output: 5
Math.random()
Description: Random 0 sampai <1.
Example:
Math.random()
Output: 0.1234...
Math.max(...nums)
Description: Nilai terbesar.
Example:
Math.max(1,5,3)
Output: 5
Math.min(...nums)
Description: Nilai terkecil.
Example:
Math.min(1,5,3)
Output: 1
Math.sqrt(x)
Description: Akar kuadrat.
Example:
Math.sqrt(9)
Output: 3
Math.pow(x, y)
Description: Pangkat.
Example:
Math.pow(2, 3)
Output: 8
Math.trunc(x)
Description: Buang desimal tanpa pembulatan.
Example:
Math.trunc(3.9)
Output: 3

MAP

new Map()
Description: Membuat map baru.
Example:
new Map()
Output: Map(0)
.set(key, value)
Description: Menambah atau mengubah pasangan kunci-nilai.
Example:
const m = new Map(); m.set('a',1)
Output: Map(1)
.get(key)
Description: Mengambil nilai berdasarkan kunci.
Example:
m.get('a')
Output: 1
.has(key)
Description: Mengecek keberadaan kunci.
Example:
m.has('a')
Output: true
.delete(key)
Description: Menghapus kunci.
Example:
m.delete('a')
Output: true
.clear()
Description: Menghapus semua pasangan.
Example:
m.clear()
Output: void
.size
Description: Jumlah pasangan kunci-nilai.
Example:
m.size
Output: 0
.forEach(cb)
Description: Iterasi dengan callback.
Example:
m.forEach((v,k) => console.log(k,v))
Output: void
.keys()
Description: Iterator kunci.
Example:
Array.from(m.keys())
Output: ['a']
.values()
Description: Iterator nilai.
Example:
Array.from(m.values())
Output: [1]

SET

new Set()
Description: Membuat set baru.
Example:
new Set()
Output: Set(0)
.add(value)
Description: Menambah nilai unik.
Example:
const s = new Set(); s.add(1)
Output: Set(1)
.has(value)
Description: Mengecek keberadaan nilai.
Example:
s.has(1)
Output: true
.delete(value)
Description: Menghapus nilai.
Example:
s.delete(1)
Output: true
.clear()
Description: Menghapus semua nilai.
Example:
s.clear()
Output: void
.size
Description: Jumlah nilai.
Example:
s.size
Output: 0

PROMISE

new Promise(executor)
Description: Membuat promise.
Example:
new Promise((resolve) => resolve(1))
Output: Promise{1}
Promise.resolve(val)
Description: Promise sukses langsung.
Example:
Promise.resolve(42)
Output: Promise{42}
Promise.reject(err)
Description: Promise gagal langsung.
Example:
Promise.reject('error')
Output: Promise{<rejected>}
.then(onFulfilled, onRejected?)
Description: Menangani hasil sukses.
Example:
Promise.resolve(1).then(v => v+1)
Output: Promise{2}
.catch(onRejected)
Description: Menangani error.
Example:
Promise.reject('err').catch(e => e)
Output: Promise{'err'}
.finally(onFinally)
Description: Dijalankan apapun hasilnya.
Example:
Promise.resolve().finally(() => console.log('done'))
Output: void
Promise.all([...])
Description: Tunggu semua selesai, error jika ada yang gagal.
Example:
Promise.all([Promise.resolve(1), Promise.resolve(2)])
Output: Promise{[1,2]}
Promise.allSettled([...])
Description: Tunggu semua selesai (selalu sukses).
Example:
Promise.allSettled([Promise.reject('e')])
Output: Promise{[{status:'rejected', reason:'e'}]}
Promise.race([...])
Description: Hasil dari promise pertama yang selesai.
Example:
Promise.race([new Promise(r => setTimeout(r,100,'a')), Promise.resolve('b')])
Output: Promise{'b'}
Promise.any([...])
Description: Promise pertama yang sukses, error jika semua gagal.
Example:
Promise.any([Promise.reject('e'), Promise.resolve(2)])
Output: Promise{2}

DATE

new Date()
Description: Tanggal & waktu saat ini.
Example:
new Date()
Output: 2026-01-01T00:00:00.000Z
new Date(timestamp)
Description: Dari milliseconds sejak epoch.
Example:
new Date(0)
Output: 1970-01-01T00:00:00.000Z
new Date(dateString)
Description: Parsing string tanggal.
Example:
new Date('2026-01-01')
Output: 2026-01-01T00:00:00.000Z
.getFullYear()
Description: Tahun (4 digit).
Example:
new Date().getFullYear()
Output: 2026
.getMonth()
Description: Bulan (0-11).
Example:
new Date(2026,0,1).getMonth()
Output: 0
.getDate()
Description: Tanggal (1-31).
Example:
new Date(2026,0,1).getDate()
Output: 1
.getHours()
Description: Jam (0-23).
Example:
new Date(2026,0,1,13).getHours()
Output: 13
.getMinutes()
Description: Menit (0-59).
Example:
new Date(2026,0,1,0,30).getMinutes()
Output: 30
.getSeconds()
Description: Detik (0-59).
Example:
new Date(2026,0,1,0,0,45).getSeconds()
Output: 45
.toISOString()
Description: Format ISO 8601.
Example:
new Date(2026,0,1).toISOString()
Output: "2026-01-01T00:00:00.000Z"
.toLocaleDateString(locale)
Description: Format tanggal lokal.
Example:
new Date(2026,0,1).toLocaleDateString('id-ID')
Output: "1/1/2026"

DOM-SELECTION

document.querySelector(selector)
Description: Ambil elemen pertama yang cocok.
Example:
document.querySelector('.card')
Output: Element | null
document.querySelectorAll(selector)
Description: Ambil semua elemen yang cocok (NodeList).
Example:
document.querySelectorAll('.card')
Output: NodeList
document.getElementById(id)
Description: Ambil elemen berdasarkan id.
Example:
document.getElementById('app')
Output: Element | null
document.getElementsByClassName(class)
Description: Ambil elemen berdasarkan class (HTMLCollection live).
Example:
document.getElementsByClassName('item')
Output: HTMLCollection
document.getElementsByTagName(tag)
Description: Ambil elemen berdasarkan tag (HTMLCollection live).
Example:
document.getElementsByTagName('p')
Output: HTMLCollection

DOM-MANIPULATION

document.createElement(tag)
Description: Buat elemen baru.
Example:
document.createElement('div')
Output: Element
.appendChild(node)
Description: Tambah node sebagai anak terakhir.
Example:
parent.appendChild(child)
Output: Node
.append(...nodes)
Description: Tambah node atau teks di akhir.
Example:
parent.append('Hello', child)
Output: void
.prepend(...nodes)
Description: Tambah node atau teks di awal.
Example:
parent.prepend(child)
Output: void
.remove()
Description: Hapus elemen dari DOM.
Example:
element.remove()
Output: void
.replaceChild(newChild, oldChild)
Description: Ganti child lama dengan child baru.
Example:
parent.replaceChild(newNode, oldNode)
Output: Node
.innerHTML
Description: Isi HTML dalam elemen (bisa diset/dibaca).
Example:
element.innerHTML = '<p>Hi</p>'
Output: string
.innerText
Description: Teks yang terlihat (mempertimbangkan CSS).
Example:
element.innerText = 'Hi'
Output: string
.textContent
Description: Semua teks di dalam elemen.
Example:
element.textContent = 'Hi'
Output: string
.classList
Description: Objek untuk mengelola class (add, remove, toggle, contains).
Example:
element.classList.add('active')
Output: DOMTokenList
.setAttribute(name, value)
Description: Menambah/mengubah atribut.
Example:
element.setAttribute('data-id', '1')
Output: void
.getAttribute(name)
Description: Mengambil nilai atribut.
Example:
element.getAttribute('data-id')
Output: "1"
.removeAttribute(name)
Description: Menghapus atribut.
Example:
element.removeAttribute('data-id')
Output: void
.style
Description: Mengubah/membaca inline style.
Example:
element.style.color = 'red'
Output: void

EVENT

.addEventListener(event, handler)
Description: Pasang event listener.
Example:
btn.addEventListener('click', () => {})
Output: void
.removeEventListener(event, handler)
Description: Lepas event listener.
Example:
btn.removeEventListener('click', handler)
Output: void
.preventDefault()
Description: Cegah aksi default browser.
Example:
event.preventDefault()
Output: void
click
Description: Saat elemen diklik.
Example:
element.addEventListener('click', ...)
Output: event
input
Description: Saat nilai input berubah (setiap ketik).
Example:
input.addEventListener('input', ...)
Output: event
change
Description: Saat nilai input berubah dan fokus hilang.
Example:
select.addEventListener('change', ...)
Output: event
submit
Description: Saat form dikirim.
Example:
form.addEventListener('submit', ...)
Output: event
keydown
Description: Tombol keyboard ditekan.
Example:
document.addEventListener('keydown', ...)
Output: event
keyup
Description: Tombol keyboard dilepas.
Example:
document.addEventListener('keyup', ...)
Output: event

BOM

alert(msg)
Description: Tampilkan dialog alert.
Example:
alert('Hello')
Output: void
confirm(msg)
Description: Dialog konfirmasi (OK/Cancel).
Example:
confirm('Yakin?')
Output: boolean
prompt(msg, default?)
Description: Minta input teks.
Example:
prompt('Nama?')
Output: string | null
setTimeout(cb, delay)
Description: Jalankan fungsi setelah delay ms.
Example:
setTimeout(() => {}, 1000)
Output: timer id
setInterval(cb, delay)
Description: Jalankan fungsi berulang tiap delay ms.
Example:
setInterval(() => {}, 1000)
Output: timer id
clearTimeout(id)
Description: Hentikan timeout.
Example:
clearTimeout(id)
Output: void
clearInterval(id)
Description: Hentikan interval.
Example:
clearInterval(id)
Output: void
location
Description: Objek URL (href, reload, replace).
Example:
location.href = '/new-page'
Output: void
history
Description: Riwayat navigasi (back, forward, go).
Example:
history.back()
Output: void
navigator
Description: Info browser & perangkat (userAgent, clipboard).
Example:
navigator.userAgent
Output: string

JSON

JSON.stringify(value)
Description: Ubah nilai JS ke JSON string.
Example:
JSON.stringify({a:1})
Output: {"a":1}
JSON.parse(text)
Description: Ubah JSON string ke nilai JS.
Example:
JSON.parse('{"a":1}')
Output: {a:1}

STORAGE

localStorage.setItem(key, val)
Description: Simpan string ke localStorage.
Example:
localStorage.setItem('name', 'Ridho')
Output: void
localStorage.getItem(key)
Description: Baca string dari localStorage.
Example:
localStorage.getItem('name')
Output: "Ridho"
localStorage.removeItem(key)
Description: Hapus item.
Example:
localStorage.removeItem('name')
Output: void
localStorage.clear()
Description: Hapus semua.
Example:
localStorage.clear()
Output: void
sessionStorage.setItem(key, val)
Description: Simpan string ke sessionStorage.
Example:
sessionStorage.setItem('token', 'abc')
Output: void
sessionStorage.getItem(key)
Description: Baca string dari sessionStorage.
Example:
sessionStorage.getItem('token')
Output: "abc"
sessionStorage.removeItem(key)
Description: Hapus item.
Example:
sessionStorage.removeItem('token')
Output: void
sessionStorage.clear()
Description: Hapus semua.
Example:
sessionStorage.clear()
Output: void

CONSOLE

console.log(...args)
Description: Cetak pesan biasa.
Example:
console.log('Hello', 123)
Output: Hello 123
console.table(data)
Description: Cetak data dalam bentuk tabel.
Example:
console.table([{a:1},{a:2}])
Output: Tabel
console.error(...args)
Description: Cetak pesan error (warna merah).
Example:
console.error('Gagal!')
Output: Gagal!
console.warn(...args)
Description: Cetak peringatan (kuning).
Example:
console.warn('Hati-hati')
Output: Hati-hati
console.group(label)
Description: Mulai grup log.
Example:
console.group('Detail')
Output: void
console.groupEnd()
Description: Akhiri grup log.
Example:
console.groupEnd()
Output: void

FETCH

fetch(url, options?)
Description: Kirim HTTP request.
Example:
fetch('/api/users')
Output: Promise<Response>
response.json()
Description: Parse body sebagai JSON.
Example:
fetch('/api').then(r => r.json())
Output: Promise<any>
response.text()
Description: Parse body sebagai teks.
Example:
fetch('/api').then(r => r.text())
Output: Promise<string>
response.status
Description: HTTP status code.
Example:
response.status
Output: 200

ERROR

try { ... } catch (err) { ... } finally { ... }
Description: Tangani error.
Example:
try { throw new Error('fail') } catch(e) { e.message }
Output: 'fail'
throw new Error(msg)
Description: Lempar error baru.
Example:
throw new Error('something wrong')
Output: Error