Javascript: Strict Mode

javascript kod yazım/kullanım kod standardu olan Ecmascript’in Ecmascript5 versiyonu ile Strict Mode (SM) kullanıma sunuldu. SM genel ifadeyle javascript kodlarının belirli kısıtlamalarla kullanımını kontrol etmektedir. Bu yazımda örneklerle kullanım örneklerinden bahsedeceğim.

Öncelikle bu modu kullanmanız için herhangi bir zorlama yok, ancak yazılan kodların anlaşılabilirliği, hata ayıklama, kısmen daha hızlı çalışması için kullanmanız önerilmektedir. Bu modu kullanmak için javascript bloğumuzun üst kısmında “use strict”; veya ‘use strict’; yazmalıyız.

Global değişken kullanım durumu.
Blok içerisinde “var” kullanmadan değişken oluşturduğumuzda bu modda hata ile karşılacağız.

Burada yapmak istediğimiz herhangi bir yerden ulaşmak istediğimiz bir değişken tanımlamaktı. Strict Mode olmadan x = 5; atamamız otomatik olarak window.x=5; olarak kabul edilmekteydi. Bu durumu aşağıdaki şekilde düzeltiyoruz.

İsimsiz bir fonksiyon içerisine bulunduğumuz objeyi bastırabiliyorken SM bu durumda consola undefined çıktı verecektir.

Bu durum aşağıdaki gibi çözebiliriz.

eval fonksiyonu kullanımına izin verilmemektedir.

Fonksiyon içerisinde arguments, eval değişkenleri tanımlanması yazım hatasına neden olur.