Kullanıcı: freeman
freeman
20.12.2019 17:32
Bu dilde her şey bir nesnedir ve Object Süperseti ile türetilmiştir. Diziler, metinsel ifadeler, sayılar ve fonksiyonlar hepsi nesnedir ve her nesnenin özellikleri vardır. Bunlara property denir. Yani bir fonksiyon tanımlayıp buna daha sonra bir property ekleyebilirsiniz. Bunlar diğer dillerde static variables olarak bilinen özelliğe denk düşer.

var foo = function <entry></entry><entry></entry> foo.bar = "bar";

Bu örnekte foo fonksiyonu artık bar adında bir özelliğe sahip. Ancak foo metodu new operatörü ile örneklenecek olursa elde edilecek nesnede bar özelliği bulunmaz. Çünkü JavaScript motoru nesne örneklerken miras alınacak özellikler için prototype özelliğine bakıp bunun altındaki özellikleri yeni nesne örneğine ekler. Böylece fonksiyonlara direkt eklenen özellikler static olarak kalmış olur. Bu alan ilgili fonksiyona özel ama her nesne içinde bulunması gerekmeyen genel amaçlı şeylerin taşınması için kullanışlı bir alandır.