"Var" ya da değil kullanma
Herhangi bir değişkeni var
ifadeyle tanıtmalısınız , aksi takdirde global kapsamı kaplar.
Katı modda ( "use strict";
) bildirilmemiş değişken atamaların atıldığınıReferenceError
belirtmek gerekir .
Şu anda JavaScript'in blok kapsamı yoktur. Crockford okulu size işlev gövdesinin başına var ifadeleri koymayı öğretirken , Dojo'nun Stil Kılavuzu tüm değişkenlerin mümkün olan en küçük kapsamda bildirilmesi gerektiğini okur . ( let
İfade ve tanım JavaScript 1.7'de sunulan ECMAScript standardının bir parçası değildir.)
Tüm kapsam zincirine bakmaktan daha hızlı olduğu için düzenli olarak kullanılan nesnelerin özelliklerini yerel değişkenlere bağlamak iyi bir uygulamadır. ( Aşırı performans ve düşük bellek tüketimi için JavaScript'i optimize etme konusuna bakın .)
Dosyadaki veya `` (function () {...}) () `
Nesnelerinize kodunuzun dışında erişmeniz gerekmiyorsa, tüm kodunuzu bir işlev ifadesine (modül modülü olarak adlandırılır) sarabilirsiniz. Performans avantajları vardır ve ayrıca kodunuzun üst düzeyde küçültülmesini ve gizlenmesini sağlar. Ayrıca global ad alanını kirletmeyeceğinden de emin olabilirsiniz. JavaScript'teki Kaydırma İşlevleri, en boy yönelimli davranışlar eklemenize de olanak tanır. Ben Cherry'in modül modeli üzerine derinlemesine bir makalesi var .
"This" kullanmak ya da kullanmamak
JavaScript'te sözde klasik kalıtım kullanıyorsanız, kullanmaktan kaçınabilirsiniz this
. Hangi kalıtım modelini kullandığınız bir zevk meselesi. Diğer durumlar için Peter Michaux'un "bu" olmadan JavaScript Widget'ları hakkındaki makalesine bakın .
`Function myname ()` veya `myname = function ();`
function myname()
bir işlev bildirimidir ve myname = function();
değişkene atanan bir işlev ifadesidir myname
. İkinci form, işlevlerin birinci sınıf nesneler olduğunu ve değişkenle olduğu gibi onlarla her şeyi yapabileceğinizi gösterir. Aralarındaki tek fark, tüm fonksiyon bildirimlerinin belirli durumlarda önemli olabilecek kapsamın en üstünde yer almasıdır. Aksi takdirde eşittirler. function foo()
steno bir formdur. Kaldırma hakkında daha fazla ayrıntı JavaScript Kapsam Belirleme ve Kaldırma makalesinde bulunabilir.
Nesnenin gövdesinde yöntem tanımlama veya "prototip" kullanma
Sana kalmış. JavaScript'in dört nesne oluşturma modeli vardır: sözde klasik, prototipik, işlevsel ve parçalar ( Crockford, 2008 ). Her birinin artıları ve eksileri vardır, video görüşmelerinde Crockford'a bakın veya Anon'un önerdiği gibi İyi Parçalar kitabını edinin .
çerçeveler
Bazı JavaScript çerçevelerini seçmenizi, kurallarını ve stillerini incelemenizi ve size en uygun uygulamaları ve modelleri bulmanızı öneririm. Örneğin, Dojo Araç Kiti , birden fazla kalıtımı bile destekleyen nesne yönelimli JavaScript kodu yazmak için sağlam bir çerçeve sağlar.
desenler
Son olarak, yaygın JavaScript kalıplarını ve anti-kalıpları araştırmaya adanmış bir blog var . Ayrıca şu soruyu da inceleyin JavaScript için kodlama standartları var mı? Taşması