1. Uncaught SyntaxError: Unexpected Token
Hata mesajı ne demek?
Uncaught SyntaxError: Unexpected Token hatası, genellikle bir sözdizimi hatası yaptığınızda karşınıza çıkar. Bu hata, yazdığınız kodun JavaScript motoru tarafından anlaşılamadığını gösterir. Bir parantez ya da tırnak işareti unutulmuş olabilir veya fazla bir karakter girmiş olabilirsiniz.
Çözüm:
Bu hatayı çözmek için, kodunuzdaki tüm sözdizimi hatalarını dikkatlice kontrol edin. Eksik ya da fazla bir karakter arayışına girin. Bazen hata mesajı, hatanın yerini doğru gösteremeyebilir, bu nedenle dikkatlice tüm kodu gözden geçirmek önemlidir.
// Hatalı kod örneği
let message = "Hello World;
console.log(message);
Yukarıdaki hatalı örnekte, tırnak işareti eksik olduğundan bu hata mesajını alırsınız.
---
2. TypeError: undefined is not a function
Hata mesajı ne demek?
TypeError: undefined is not a function hatası, bir fonksiyonu çağırmaya çalıştığınızda fakat hedef fonksiyonun undefined (tanımsız) olduğu durumlarda karşınıza çıkar. Bu hatayı genellikle, yanlışlıkla bir fonksiyonu yanlış bir şekilde çağırdığınızda alırsınız.
Çözüm:
Bu hatayı çözmenin yolu, fonksiyonun doğru şekilde tanımlandığından emin olmaktır. Eğer bir fonksiyonu bir nesne üzerinden çağırıyorsanız, o nesnenin doğru şekilde tanımlandığından ve fonksiyonun var olduğundan emin olun.
// Hatalı kod örneği
let obj = {};
obj.sayHello(); // obj üzerinde sayHello fonksiyonu olmadığı için hata alırsınız
---
3. ReferenceError: x is not defined
Hata mesajı ne demek?
ReferenceError: x is not defined hatası, bir değişkeni kullanmaya çalıştığınızda fakat o değişkeni önceden tanımlamadığınızda meydana gelir. Bu hatayı genellikle yanlış bir yerde değişken kullanmaya çalıştığınızda alırsınız.
Çözüm:
Bu hatayı düzeltmek için, değişkeni doğru bir şekilde tanımladığınızdan ve erişmeye çalıştığınızda hâlâ geçerli olduğundan emin olun.
// Hatalı kod örneği
console.log(a); // 'a' daha tanımlanmamış, ReferenceError alırsınız
let a = 10;
---
4. Uncaught TypeError: Cannot read property 'x' of undefined
Hata mesajı ne demek?
Bu hata, genellikle bir nesne üzerinde var olmayan bir özelliğe erişmeye çalıştığınızda görülür. Bu hatayı aldığınızda, bir nesnenin henüz tanımlanmadığını ya da beklenmedik bir şekilde undefined olduğunu anlamalısınız.
Çözüm:
Hata mesajını çözmek için, nesnenin doğru bir şekilde tanımlandığından emin olun. Ayrıca, nesnenin null ya da undefined olup olmadığını kontrol etmek için koşullar ekleyebilirsiniz.
// Hatalı kod örneği
let user = undefined;
console.log(user.name); // 'user' undefined olduğu için TypeError alırsınız
---
5. Uncaught RangeError: Maximum call stack size exceeded
Hata mesajı ne demek?
Uncaught RangeError: Maximum call stack size exceeded hatası, genellikle bir fonksiyonun kendini sürekli olarak çağırması (sonsuz döngü) durumunda meydana gelir. Bu, stack (yığın) belleğinin dolmasına neden olur.
Çözüm:
Bu hatayı çözmek için, fonksiyonlarınızın doğru bir şekilde sonlanıp sonlanmadığını kontrol edin. Sonsuz döngülerden kaçının ve gerektiğinde koşul eklemeleri yaparak fonksiyonlarınızın sonlanmasını sağlayın.
// Hatalı kod örneği
function recursive() {
recursive(); // Sonsuz döngü
}
recursive();
---
6. Uncaught SyntaxError: Unexpected End of Input
Hata mesajı ne demek?
Uncaught SyntaxError: Unexpected End of Input hatası, genellikle bir dosyada açtığınız bir parantez ya da tırnağı kapatmadığınızda meydana gelir. JavaScript kodu sona erdiğinde hala kapanmamış bir yapı varsa bu hata mesajını alırsınız.
Çözüm:
Bu hatayı çözmek için, açtığınız tüm parantezlerin, tırnak işaretlerinin ve süslü parantezlerin kapandığından emin olun.
// Hatalı kod örneği
if (true) {
console.log("Hello World");
// Açık parantez kaldı, kapanmadığı için hata alırsınız
---
7. Uncaught ReferenceError: require is not defined
Hata mesajı ne demek?
Node.js uygulamaları dışında, tarayıcıda JavaScript çalıştırırken require fonksiyonunun tanımlı olmadığını gösteren bu hata, genellikle modülleri tarayıcı ortamında kullanmaya çalıştığınızda ortaya çıkar.
Çözüm:
Tarayıcıda modüller kullanırken import sözcüğünü tercih edin. Eğer Node.js ortamında çalışıyorsanız, doğru modülleri yüklediğinizden ve uygulamanın doğru yapılandırıldığından emin olun.
// Hatalı kod örneği
const fs = require('fs'); // require tarayıcıda çalışmaz
---
8. Uncaught EvalError: Code generation from strings disallowed in strict mode
Hata mesajı ne demek?
Bu hata, strict mode içinde dinamik kod çalıştırmaya çalıştığınızda karşınıza çıkar. "eval()" fonksiyonunu kullanmak, strict mode içinde yasaktır.
Çözüm:
Bu hatayı çözmek için, eval() fonksiyonunun yerine daha güvenli alternatifler kullanmayı tercih edin. Ayrıca, kodu strict mode dışına almayı da düşünebilirsiniz.
// Hatalı kod örneği
'use strict';
eval('console.log("Hello World")'); // strict mode içinde eval kullanılamaz
---
9. Uncaught TypeError: Cannot set property 'x' of null
Hata mesajı ne demek?
Bu hata, null bir nesnenin özelliğini değiştirmeye çalıştığınızda ortaya çıkar. Bu, genellikle DOM elementlerine erişmeye çalışırken eksik ya da hatalı bir seçim yapıldığında meydana gelir.
Çözüm:
Bu hatayı düzeltmek için, hedeflediğiniz DOM elementinin var olduğundan emin olun ve önceden kontrol ekleyin.
// Hatalı kod örneği
let element = document.getElementById('myElement');
element.innerHTML = 'Hello'; // Eğer 'myElement' bulunmazsa, null hatası alırsınız
---
10. Uncaught SyntaxError: Invalid or unexpected token
Hata mesajı ne demek?
Bu hata, genellikle yanlış karakterler ya da beklenmedik semboller kullanıldığında ortaya çıkar. Hatalı bir karakter girildiğinde veya yanlış bir yerden bir şey eklediğinizde bu hatayı görürsünüz.
Çözüm:
Kodunuzdaki özel karakterleri, boşlukları veya yanlış yazılmış sembolleri kontrol edin. Bu, genellikle bir tırnak işareti veya noktalama işaretinin eksik olmasından kaynaklanır.
// Hatalı kod örneği
let name = 'John;
console.log(name); // Tırnak işareti eksik
---