eval
işlevini bir kurucu olarak garip bir şekilde kullanıyorum.Tüm JavaScript fonksiyonları kurucular değil mi?
try {
var y = new eval()
} catch(error) {
console.log("caught a " + error.name + ": " + error.message);
}
Sanki hatayı atar, hata mesajı gösterdiği gibi
caught a TypeError: function eval() { [native code] } is not a constructor
, eval bir işlev değil, bir yapıcı olduğunu.
Sorun şu ki, javascript işlevleri de kurucu olarak davranmıyor mu?
eval ayrılmış bir anahtar sözcük/yerel bir işlevdir. Buna karışma. –
Hayır, diğer bazı olası istisnalar bazı _DOM_ yöntemleri ve _arrow işlevleri_ 'x => undefined' –
Anlaşıldı, eval yerleşik bir işlevdir. Eğer kendi fonksiyonunuzu yaptınız myEval() {} 've daha sonra bu kodu kullanmalısınız. –