Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 9340|Yanıt: 0

[JavaScript] Javascript'in bu ayrıntılı açıklaması

[Bağlantıyı kopyala]
Yayınlandı 28.09.2020 19:04:30 | | | |
Öncelikle, bunun noktası fonksiyon tanımlandığında belirlenemez, ancak fonksiyon yürütüldüğünde bunun kime işaret ettiği belirlenebilir, aslında bunun son noktası onu çağıran nesnedir (bu cümlede bazı sorunlar var ve neden bir sorun olduğu daha sonra açıklanacaktır, her ne kadar internetteki çoğu makale bunu söylüyor, ancak çoğu durumda bu anlayışla ilgili sorun olmaz, ancak aslında bu anlayış yanlıştır, Bunu anladığınızda, bir anlaşılmazlık hissi yaşayacaksınız), bu yüzden bu konuyu derinlemesine inceleyeceğim.

Test şöyledir:




Bu, fonksiyonların farklı amaçları için farklı değerlere sahiptir. Genel olarak, fonksiyonun çalıştığı ortam nesnesi budur. Bunun kullanımı dört durumda ayrıntılı olarak tartışılır.

Durum 1: Saf fonksiyon çağrıları

Bu, bir fonksiyonun en yaygın kullanımıdır ve küresel bir çağrıdır, yani küresel bir nesneyi temsil eder. Aşağıdaki koda bakın, 1 sonucu ile çalışıyor.


Durum 2: Nesne olarak çağırma yöntemi

Fonksiyon ayrıca bir nesnenin yöntemi olarak da çağrılabilir; bu durumda bu, ana nesneye atıfta bulunur.


Vaka 3 Yapımcı olarak Çağrı

Sözde yapıcı olarak adlandırılan şey, bu fonksiyon aracılığıyla yeni bir nesne oluşturulabilir. Bu noktada, bu yeni nesneye atıfta bulunuyor.


Çalışmanın sonucu 1. Şu anda bunun küresel bir nesne olmadığını göstermek için kodda bazı değişiklikler yapıyoruz:



Çalışmanın sonucu 2'dir, bu da küresel değişken x'in değerinin hiç değişmediğini gösterir.

Vaka 4 başvuru çağrısı

apply(), fonksiyonun çağıran nesnesini değiştiren bir fonksiyonun bir yöntemidir. İlk parametresi, fonksiyonu çağıran değişen nesneyi temsil eder. Bu nedenle, bu ilk parametreye atıfta bulunur.


apply() parametresi boş olduğunda, küresel nesne varsayılan olarak çağrılır. Dolayısıyla, koşunun sonucu 0'dır ve bu da bunun küresel nesneye atıfta bulunduğunu kanıtlar.

Kodun son satırını şu şekilde değiştirirseniz


Çalışan sonuç 1 olur ve bunun obj'yi temsil ettiğini kanıtlar.

(Son)


Referans:

Bağlantı girişi görünür.
Bağlantı girişi görünür.





Önceki:[Gerçek dövüş] ASP.NET Core, Redis dağıtılmış kilit flash satışına dayanıyor
Önümüzdeki:Dinlenme yaması ile put talebi arasındaki fark
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com