Latihan 1 dari materi File System & Permissions di DevOps — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Tulis function parsePermission(octal) yang menerima mode angka (misalnya 755) dan mengembalikan string 9 huruf permission-nya.
Ubah angkanya jadi teks dengan String(octal), lalu pecah per digit dengan split("").
Gabungkan tiga trio dengan join("") dan return hasilnya. Tanpa huruf jenis file di depan, jadi "rwxr-xr-x", bukan "-rwxr-xr-x".
Yang dicek:
parsePermission(755) mengembalikan "rwxr-xr-x"
parsePermission(644) mengembalikan "rw-r--r--"
parsePermission(600) mengembalikan "rw-------"
parsePermission(777) mengembalikan "rwxrwxrwx"
Dua baris console.log(parsePermission(...)) di kode awal sudah ada, biarkan saja untuk melihat hasilnya.
Hint
Tiap digit adalah satu trio: pemilik, grup, lainnya. Digitnya jumlah dari r = 4, w = 2, x = 1, jadi 7 = rwx, 5 = r-x, 0 = ---.
Bikin object TRIO yang memetakan 0 sampai 7 ke tiga hurufnya. Lalu String(octal).split("") memberi tiga digit, dan map mengganti tiap digit dengan TRIO[digit].