SORU
17 EYLÜL 2008, ÇARŞAMBA


Neden JavaScript eval fonksiyonu kötü bir fikir mi kullanıyor?

İşlevi dinamik olarak güçlü ve kolay bir yoludur eval kodunu üretmek, uyarılar nelerdir?

CEVAP
17 EYLÜL 2008, ÇARŞAMBA


eval her zaman kötü değildir. Gayet uygun olduğu zamanlar vardır.

Ancak, eval şu anda ve geçmişte kitlesel üzerinde kullanılan ne yaptığını bilmeyen insanlar tarafından. Bu insanlar JavaScript öğreticiler yazma içerir, ne yazık ki, bazı durumlarda bu gerçekten güvenlik sonuçları - ya da, daha sık, basit hatalar olabilir. Daha eval üzerinde bir soru işareti atmak için yapabileceğimiz o kadar iyi. Kullanmak için her zaman şansı daha iyi, daha güvenli ve temiz bir şekilde yapıyor olabilirsin çünkü yaptığın şey akıl sağlığını kontrol etmek gerekir eval,.

Bir all-çok tipik bir örnek vermek gerekirse, bir ıd değişkeni içinde depolanan bir öğe rengini ayarlamak için'': . patates

eval('document.'   potato   '.style.color = "red"');

Eğer yazarlar tür kodu yukarıda bir ipucu hakkında temel bilgileri nasıl JavaScript nesneleri çalışmak zorunda kalırlar fark köşeli parantez kullanılabilir yerine değişmez nokta isimler, obviating ihtiyacı için eval:

document[potato].style.color = 'red';

okumak için çok daha kolay hem de daha az potansiyel olarak hatalı. hangi ...

(Ama sonra, /ne yaptığını bilmiyordu/ birisi demiş ki;

document.getElementById(potato).style.color = 'red';

hangi belge nesnesi çıkar çıkmaz DOM öğelerine erişme hurda bir oyun daha güvenilirdir.)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Codecourse

    Codecourse

    3 ŞUBAT 2009
  • FND Films

    FND Films

    2 Mayıs 2006
  • Perihelion

    Perihelion

    23 NİSAN 2008