Escape Türkçe karşılığı kaçmak, kurtulmak.
Elinizdeki bir string değişkenin içindeki değerleri olduğu gibi bir string olarak okumaya/yazmaya diyoruz. Birkaç farklı yerde farklı anlama geliyor. Örneklendirerek daha iyi anlatabiliriz.
Örneğin C/C++/Java dillerinde \n enter karakteri olarak kullanılıyor. \ karakter bir nevi belirteç gibi kullanılıyor. \ bu karakterden sonra eğer n eklerseniz enter, t eklerseniz tab anlamına geliyor. Peki gerçekten string içinde \ karakterini kendisi olarak kullanmak isterseniz ne yapacaksınız? \ karakterini özel bir karakter olmaktan kurtarmanız gerekiyor. Aynısı " karakteri için de geçerli. String içinde gerçekten " karakteri yazdırmak isterseniz de bu karakteri string başlangıcı/bitişi özelliğinden kurtarmanız gerekiyor. Bunu gerçekleştirmek için bu dillerde \ karakterine özel kendinden sonraki karaktere bir anlam yüklediği için olsa gerek \ karaktere escape karakteri de deniyor. Eğer string içinde " karakteri istiyorsanız \" yazarak " karakterini kullanabilirsiniz örneğin;
String mesaj = "Bu \"karakter\" özel tırnak içinde yazılacak";
Yukarıdaki mesaj stringini ekrana yazdırdığınız zaman
Bu "karakter" özel tırnak içinde yazılacak
Şeklinde bir çıktı alırsınız.
Bir internet sitesi yazarken URL içine boşluk karakteri koymak istediğimiz zaman da sorun yaşarız. Boşluk yerine karakterin escape halini alırız. Daha sonradan decode ederek istediğimiz şekilde kullanabiliriz. Bunun örneği olarak
escape("Bu mesaj boşluk ve <özel> karakter içerir!");
// js kodunu çalıştırırsanız çıktı olarak
Bu%20mesaj%20bo%u015Fluk%20ve%20%3C%F6zel%3E%20karakter%20i%E7erir%2
// Bu şekilde bir mesaj alırsınız. Geri çevirmek için de aşağıdaki kodu kullanabilirsiniz.
unescape("Bu%20mesaj%20bo%u015Fluk%20ve%20%3C%F6zel%3E%20karakter%20i%E7erir%21")