AvoidAssignmentToAutomaticVariable

Tingkat Keparahan : Peringatan

Deskripsi

Aturan ini mendeteksi penetapan ke variabel otomatis dan nama parameter yang menggunakan nama variabel otomatis. PowerShell secara otomatis mendefinisikan variabel yang menyimpan informasi status internal dan mengelolanya sendiri. Meskipun Anda dapat mengganti banyak variabel otomatis, hal itu dapat memiliki efek tak terduga bagi pengguna dan membuat kode Anda lebih sulit untuk dipelihara dan di-debug.

Hindari menggunakan nama variabel otomatis dalam fungsi dan parameter Anda. Cadangkan variabel otomatis hanya untuk penggunaan internal PowerShell, dan andalkan variabel tersebut hanya untuk membaca informasi status.

Untuk mempelajari lebih lanjut, lihat about_Automatic_Variables.

Bagaimana

Gunakan nama variabel dalam fungsi atau parameternya yang tidak bertentangan dengan variabel otomatis.

Example

Tidak sesuai

Variabel $Error adalah variabel otomatis yang ada dalam cakupan global dan oleh karena itu tidak boleh digunakan sebagai variabel atau nama parameter.

function foo($Error){ }
function Get-CustomErrorMessage($ErrorMessage){ $Error = "Error occurred: $ErrorMessage" }

Sesuai

function Get-CustomErrorMessage($ErrorMessage){ $FinalErrorMessage = "Error occurred: $ErrorMessage" }