Deklarasyon Alanları

TypeScript'te iki deklarasyon alanı vardır: variable (değişken) deklarasyon alanı ve type (tip) deklarasyon alanı. Bu konseptler aşağıda incelenmiştir.

Type (Tip) Deklarasyon Alanı

Type (tip) deklarasyon alanı, tip belirteci olarak kullanılabilecek öğeleri içerir. Aşağıdakiler birkaç tip deklarasyona örnektir:

class Foo { }
interface Bar { }
type Bas = {}

Bunun anlamı Foo, Bar, Bas vb. tip belirteci olarak kullanabilirsiniz. Örneğin:

var foo: Foo;
var bar: Bar;
var bas: Bas;

Dikkat edin interface Bar'a sahip olsanız bile onu değişken olarak kullanamazsınız, çünkü o variable (değişken) deklarasyon alanında tanımlanıp aktarılamamış. Aşağıdaki örnekte gösterilmiştir:

interface Bar {};
var bar = Bar; // ERROR: "cannot find name 'Bar'"

cannot find name (isim bulunamıyor) demesinin sebebi ise, Bar isminin variable (değişken) deklarasyon alanında tanımlanmamış olmasıdır. Bu bizi bir sonraki "Variable (Değişken) Deklarasyon Alanı" konusuna götürüyor.

Variable (Değişken) Deklarasyon Alanı

Variable (değişken) deklarasyon alanı, değişken belirteci olarak kullanılabilecek öğeleri içerir. class Foo'nun tip Foo olarak tanımlanıp tip deklarasyon alanına aktarılabildiğini gördük. Tahmin edin?, değişken Foo aynı zamanda variable (değişken) deklarasyon alanına aşağıda gösterildiği gibi tanımlanıp aktarıldı:

class Foo { }
var someVar = Foo;
var someOtherVar = 123;

Bazen sınıfları değişkenler olarak aktarmak istediğimiz için bu harika. Şunu hatırlayın

  • Sadece tip deklarasyon alanındaki interface (arayüz) gibi şeyleri bir değişken olarak kullanamadık.

var olarak tanımladığınız birşey benzer olarak, sadece variable (değişken) deklarasyon alanı içerisinde olabilir ve tip belirteci olarak kullanılamaz:

var foo = 123;
var bar: foo; // ERROR: "cannot find name 'foo'"

cannot find name (isim bulunamıyor) demesinin sebebi ise, foo isminin type (tip) deklarasyon alanında tanımlanmamış olmasıdır.

results matching ""

    No results matching ""