Error Handling: try/catch/finally
Penjelasan
PowerShell mendukung `try`/`catch`/`finally` mirip bahasa modern lainnya. Kode yang berpotensi error ditaruh di `try`, penanganannya di `catch` (menerima object error lewat `$_` atau `$Error[0]`), dan `finally` selalu dijalankan apa pun hasilnya. `throw` dipakai untuk melempar error kustom.
Contoh Konsep
function Bagi($a, $b) {
if ($b -eq 0) {
throw "Tidak bisa membagi dengan nol."
}
return $a / $b
}
try {
Bagi 10 0
} catch {
Write-Host "Error: $($_.Exception.Message)"
} finally {
Write-Host "Percobaan selesai."
}
Praktikum
Buat function AmbilElemen($data, $index) yang melempar error (throw) kalau $index di luar jangkauan array $data. Panggil di dalam try/catch dengan index yang sengaja tidak ada, tampilkan pesan errornya.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
`$_.Exception.Message` adalah cara paling umum mengambil pesan error di dalam blok catch — `$_` merujuk ke object error yang sedang ditangani saat itu.