Mari kita ingat ingat kembali lagi mengenai penulisan fungsi di dalam javascript
// Misalnya ini adalah fungsi untuk pembagian
// Deklarasi fungsi umum
function fungsiPembagian(param1, param2) {
return param1 / param2;
}
// Deklarasi fungsi dengan ekspresi
const fungsiPembagianExpr = function (param1, param2) {
return param1 / param2;
}
// Deklarasi fungsi dengan arrow
const fungsiPembagianArrow = (param1, param2) => param1 / param2;
isNaN()
=> Untuk mengecek apakah NaN (not a number) atau bukanparseInt()
=> Untuk mengkonversi string menjadi numberparseFloat()
=> Untuk mengkonversi string menjadi angka desimaltoFixed()
toString()
split()
slice()
substring()
toLowerCase()
toUpperCase()
push()
join()
reverse()
sort()
floor()
ceil()
random()
parse()
now()
toString()
toDateString()
Bahkan sebenarnya fungsi bawaannya JAUH lebih banyak dari ini
Mari kita lihat contoh kodenya
// NaN adalah sebuah nilai yang menunjukkan bukan angka
const sebuahAngka = NaN;
const sebuahStringBulat = '250';
const sebuahStringDesimal = '100.215';
if (isNaN(sebuahAngka)) console.log('ini bukan angka !');
console.log(sebuahStringBulat); // '250'
console.log(parseInt(sebuahStringBulat)); // 250
console.log(sebuahStringDesimal); // '100.215'
console.log(parseInt(sebuahStringDesimal)); // 100
console.log(parseFloat(sebuahStringDesimal)); // 100.215
Mari kita lihat contoh kodenya
const sebuahAngka = 100.25123;
console.log(sebuahAngka); // 100.25123
console.log(sebuahAngka.toFixed(2)); // '100.25'
console.log(sebuahAngka.toString()); // '100.25123'
Mari kita lihat contoh kodenya
let sebuahArray = ['ini', 'adalah', 'sebuah', 'array'];
// ['ini', 'adalah', 'sebuah', 'array', 'baru']
// langsung modifikasi variabel
// apabila di console log, isinya adalah panjang array baru (5)
sebuahArray.push('baru');
// 'ini-adalah-sebuah-array-baru'
console.log(sebuahArray.join('-'));
// ['baru', 'array', 'sebuah', 'adalah', 'ini]
console.log(sebuahArray.reverse());
let sebuahArray = ['ini', 'adalah', 'sebuah', 'array'];
// [ 'adalah', 'array', 'baru', 'ini', 'sebuah' ]
console.log(sebuahArray.sort());
// kombinasi
let arrayBaru = sebuahArray
.sort() // ['adalah', 'array', 'baru', 'ini', 'sebuah']
.reverse() // ['sebuah', 'ini', 'baru', 'array', 'adalah']
.join('-') // 'sebuah-ini-baru-array-adalah'
.toUpperCase(); // 'SEBUAH-INI-BARU-ARRAY-ADALAH'
console.log(arrayBaru); // 'SEBUAH-INI-BARU-ARRAY-ADALAH'
Mari kita lihat contoh kodenya
const sebuahAngkaDesimal = 12.54;
// pembulatan
console.log(Math.floor(sebuahAngkaDesimal)); // ke bawah, 12
console.log(Math.ceil(sebuahAngkaDesimal)); // ke atas, 13
// Angka acak, rentang dari 0 s.d. 1 (ada angka di belakang koma)
// selalu berbeda tiap dijalankan
const randomNumber = Math.random(); // 0.9353807146167443
console.log(randomNumber);
const angkaAcakRiil = Math.ceil(randomNumber * 6);
console.log(angkaAcakRiil); // angka acak dari 1 s.d. 6
Mari kita lihat contoh kodenya
// Object Date yyyy-mm-ddTHH:MM:SS.miliZ
const tanggalSekarang = new Date();
console.log(tanggalSekarang);
// angka milliseconds sejak 1 Januari 1970 00:00:00 UTC
// disebut juga sebagai milliseconds sejak waktu Epoch
// (Epoch Time)
const tanggalSekarangNow = Date.now();
console.log(tanggalSekarangNow);
// Akan mengembalikan selisih (dalam milliseconds)
// dari epoch time sampai dengan date yang di-parse
const waktuAwal = Date.parse('01 Jan 1970 00:00:00 UTC');
console.log(waktuAwal); // 0
const waktuAsal = Date.parse('01 Jan 2022 00:00:00 UTC');
// 52 tahun (1970 - 2022), ada 13 tahun kabisat, jadi milidetik
console.log(waktuAsal); // 1640995200000
// Cetak waktu dalam string, dengan zona waktu
console.log(new Date(waktuAsal).toString());
// Cetak waktu dalam string, tanpa zona waktu dan jam
console.log(new Date(waktuAsal).toDateString());
Mari kita lihat contoh kode berikut
// ini adalah global variable
const global = "Ini adalah variabel global";
// ini adalah sebuah function
const sebuahFn = () => {
// ini adalah local variable
const local = "ini adalah variabel lokal";
// karena global, bisa diakses dari local
console.log(global);
// karena local, bisa diakses dari local itu sendiri
console.log(local);
}
console.log(local); // error, local undefined
Mari kita lihat contoh kode
const globalVariable = 'global';
// Outer Function / Higher Order Function
function fungsiLuar() {
const localVariable = 'local';
// Closures
function fungsiDalam() {
return [globalVariable, localVariable];
}
return fungsiDalam;
}
const fnDenganClosures = fungsiLuar();
console.log(fnDenganClosures());
Mari lihat contoh kode lainnya
function nambahinAngka() {
let counter = 0;
return ++counter;
}
function nambahinAngka2() {
let counter = 0;
return function penambah() {
return ++counter;
};
}
const inkremenAngka = nambahinAngka2();
for (let i = 0; i < 5; i++) console.log(nambahinAngka());
for (let j = 0; j < 10; j++) console.log(inkremenAngka());
Akan dipelajari lebih lanjut pada pertemuan berikutnya