JavaScript: Sınıflar

Nesne Oluşturma için Şablon Oluşturma

Fotoğraf: Feliphe Schiarolli, Unsplash

İşlevlerden nesne oluşturma sürecini kapsayan üçüncü ve son hafta / hikaye. Önce fabrika fonksiyonları konusuna daldım ve bu fikirden kurucu fonksiyonlara geçtim . Bu noktaya kadar her şey çocuk oyuncağıydı; şimdi büyük liglerde oynuyoruz - JavaScript sınıfları .

JavaScript sınıfları, aslında daha önce tartıştığım önceki iki yöntemin sözdizimsel şekerleridir. Sınıflar da aynı şeyi, bir nesneyi döndüren bir işlevi, ancak daha hoş ve kolayca tüketilebilir bir şekilde başarır. Önceden, yapıcı işlevini oluşturmamız ve prototip zinciri aracılığıyla ayrı ayrı erişebileceği farklı yöntemler tanımlamamız gerekirdi. Derslerle hepsini tek bir yerde tutabiliriz.

Hero yapıcımız eskiden çalışıyor. Daha iyisini yapabiliriz!

Sınıflar

JavaScript'te bir sınıf oluşturmaya başlamak için, anahtar kelimeyle başlamalısınız class. Öyleyse, Kahraman şablonumuzu oluşturmaya başlayacak olsaydık, şunu yazardık:

class Hero {
}

class Hero {
  constructor(name, alias, abilities) {
    this.name = name;
    this.alias = alias;
    this.abilities = abilities;
  }
}

class Hero {
  constructor(name, alias, abilities) {
    console.log('THIS IS THE BEGINNING OF CONSTRUCTOR');
    this.name = name;
    this.alias = alias;
    this.abilities = abilities;
    console.log('THIS IS THE END OF CONSTRUCTOR');
  }
}
let captainAmerica = new Hero('Steven Rogers', 'Captain America', ['Enhanced strength, speed, stamina, durability, agility, reflexes, senses, and mental processing via the super soldier serum', 'Master martial artist and hand-to-hand combatant', 'Accelerated healing', 'Immunity to diseases and toxins', 'Slowed aging', 'Master tactician, strategist, and field commander', 'Using Vibranium-steel alloy shield'])
// I know that captainAmerica object looks terrible in the Medium code template, but what ya gonna do? //

Dikkat edilmesi gereken birkaç nokta daha. Yeniyi tanımlarken class, tanıma büyük harfle (yani class Hero) başlamak standarttır . Ayrıca, constructoryöntem içindeki özellikleri farklı isimlerle tanımlayabilirsiniz, this.alias = aliasolabilir gibi this.orange = alias, ancak, bence bariz nedenlerden dolayı, yapılması standart bir uygulamadır this.alias = alias.

Tamam, ancak JS sınıflarının gerçek avantajı yöntemlerle birlikte gelir. Bunları dışarıda tanımlamamız ve Constructor functions ( Hero.prototype.assemble = function(){}) ile yaptığımız gibi prototip zincirine eklememiz gerekmez . Sınıflar o tatlı, tatlı sözdizimsel şekeri sağlar ve aşağıdakileri yapmamızı sağlar:

Boom! Bu güzel görünmüyor ve hissettirmiyor mu? Hero sınıfımızın yeni bir örneğini başlattığımızda, bu iki yöntem ( assemble& disassemble) otomatik olarak nesnenin prototip zincirine dahil edilir. Gerçekten bu kadar basit.

Mutlu Kodlama 🤓

Suggested posts

Alan Adları Hakkında Bilgi Bulma

Brian P. Hogan'ın Küçük, Keskin Yazılım Araçları'ndan bir alıntı

Alan Adları Hakkında Bilgi Bulma

facebook.com'a bir talepte bulunduğunuzda, bilgisayarınız o bağlantıyı kurabilmesi için bu alan adını bir IP adresine çevirmek üzere alan adını arar.

Math'dan CS'ye nasıl geçiş yaptım?

Math'dan CS'ye nasıl geçiş yaptım?

Sonbahar 2023 kabul süreci sona eriyor ve ertelemeler/reddedilmeler yaşanıyor. UW'de hayalinizdeki programa kabul edildiyseniz tebrikler.

Related posts

"Mariana Çukuru Ortaya Çıktı: Uçurumun Korkunç Gizli Gerçeklerini Ortaya Çıkarmak"

"Mariana Çukuru Ortaya Çıktı: Uçurumun Korkunç Gizli Gerçeklerini Ortaya Çıkarmak"

Giriş: Cesur okuyucular, bizi gezegenimizin en karanlık derinliklerine götürecek bir yolculuğa hoş geldiniz. Bu blogda, Mariana Çukuru'nun esrarengiz dünyasına dalıyor, onun gizli sırlarını açığa çıkarıyor ve yüzeyinin altında yatan tüyler ürpertici gerçekleri ortaya çıkarıyoruz.

Bir Çocuğun İlk Kafasını Yükseltme Kitabı

Bir Çocuğun İlk Kafasını Yükseltme Kitabı

(Uyarı- Bu Hiciv, Neşeyle Yıkıcı Olma Amaçlıdır- Kesinlikle çocuklar için değildir) Annenizi ve babanızı mutfakta saklanıp o kokulu sigaraları içerken gördünüz. Sana söylerler.

Yazma Becerinizi Geliştirmenin Kanıtlanmış 3 Yolu

Yazmanın faydaları ve bunu yapmanıza yardımcı olacak stratejiler

Yazma Becerinizi Geliştirmenin Kanıtlanmış 3 Yolu

2022'de GPT-3'ün piyasaya sürülmesiyle yazma becerisinin önemi azalmış gibi görünüyor. AI ile, zayıf yazıya sahip kişiler de kaliteli personel oluşturabilir.

Sadece Bir Telefon Numarasıyla Herkesi Takip Edin | OSINT Soruşturması

Sadece Bir Telefon Numarasıyla Herkesi Takip Edin | OSINT Soruşturması

Bir OSINT Araştırmacısı, CTF Oyuncusu veya yalnızca istenmeyen aramalar alan biri olabilirsiniz. Bir reklamda gördüğünüz numarayı doğrulamaya çalışan biri.