TypeScript Notları
  • Giriş
  • Handbook
    • TypeScript nedir, ne işe yarar ?
    • Kurulum ve tsc
    • Temel Tipler
    • any ve unknown
    • Union Type (Çoklu Tipler)
    • Literal Types
    • Objects (Objeler)
    • Arrays (Diziler)
    • Tuple
    • Fonksiyonlar
    • Optional Params (Opsiyonel Parametreler)
    • type
    • interface
    • readonly
    • Generics
    • Modül Yapısı
    • Type Assertion
    • keyof, typeof
    • Mapped Types
    • React ve TypeScript
      • Props Tipleri
      • State Tipleri
      • Event Tipleri
      • useRef
  • Tip and Tricks
    • json2ts
  • Kaynakça
Powered by GitBook
On this page
  1. Handbook

TypeScript nedir, ne işe yarar ?

TypeScript, JavaScript üzerine inşa edilmiş bir programlama dilidir. JavaScript superset idir. TypeScript in temel amacı static type checking yaparak geliştirme aşamasında tip kontrolünü sağlamaktır.

Static Type sistemler, programlarımızı çalıştırdığımızda değerlerimizin ne olacağını ve davranışlarını tanımlar. TypeScript bu bilgiyi kullanır ve bize ne zaman hata alacağımızı söyler.

const message = "hello!";

message();

/* This expression is not callable.
Type 'String' has no call signatures. */

Yukarıda ki kod bloğunu çalıştırdığımızda hata mesajı karşımıza çıkacaktır. TypeScript ise kodu çalıştırmadan önce bize bir hata mesajı verecektir.

TypeScript aynı zamanda çalışma öncesi hataları yakalamamızı da sağlar. Örneğin aşağıdaki kod bloğunu çalıştırdığımızda console a undefined değerini yazar.

const user = {
  name: "Daniel",
  age: 26,
};

console.log(user.location);

TypeScript kullandığımız takdirde kullandığımız editörümüz de karşımıza aşağıdaki hata mesajı çıkacaktır.

Property 'location' does not exist on type '{ name: string; age: number; }'.

TypeScript aşağıdaki gibi basit logic hataları geliştirme aşamasında karşılaşmamızı sağlar.

const value = Math.random() < 0.5 ? "a" : "b";
if (value !== "a") {
  // ...
} else if (value === "b") {
  // ...
}

/*This condition will always return
 'false' since the types '"a"' and '"b"' have no overlap.*/

PreviousGirişNextKurulum ve tsc

Last updated 3 years ago