Bu makalede, classList DOM Manipulation ile projeniz için JavaScript nesnesini kullanarak CSS sınıflarını nasıl değiştireceğinizi göreceğiz.  classList Nesnesi bir HTML CSS sınıflarını ayarlamasını sağlar.

Başlıyoruz; 

Bir index.html dosya oluşturun ve style CSS sınıfları içeren bir etiket ve aşağıdaki özelliklere sahip bir paragraf öğesi ekleyelim:

<style>
  .colorText {
    color: purple;
  }

  .boldText {
    font-weight: bold;
  }

  .bigText {
    font-size: 35px;
  }
</style>

<p id="myText">
  Hello World!
</p>

Şimdi metninizi classList özellik ile CSS sınıflarınızı  değiştirme işlemini uygulayalım. Bu yöntemi kullanmanın birden fazla yolu bulunmaktadır. Bunların en sık kullanılan 2 farklı yöntemine  elimden geldiği kadar değineceğim. 

1. Yöntem:  .add() ve .contains() Yöntemlerini Kullanma

Bir index.js dosya oluşturalım, html sayfamızdaki paragraf öğenize bir referans alalım ve classList.add() yöntemini çağıralım. :

const myText = document.getElementById('myText');
myText.classList.add('colorText');

Yerleşik classList.add() yöntem, HTML öğenize bir sınıf uygular. Bu durumda, paragraf öğesindeki metniniz artık mor görünecektir.

classList.contains() Bir boolean döndürme yöntemini kullanarak CSS sınıfının paragraf öğenizde olup olmadığını da kontrol edebilirsiniz :

const myText = document.getElementById('myText');
console.log(myText.classList.contains('colorText')); // true

Not : consol.log ile ilgili kullanımı bildiğinizi varsayıyorum ama yinede önümüzdeki günlerde bu konu hakkında detaylı bir makale yayınlayacağım. Yukarıdaki son kodda sistem başarılı ise console.log alanınıda true cevabı dönecektir. 

2. Yöntem: .item() ve .remove() Yöntemlerini Uygulama

index.js dosyamızın, paragraf elemana daha fazla CSS sınıfları ekleybiliriz yani var olan CSS class'ı değilde yanına bir class daha atamak istiyorsak kullanabiliriz. Şöyle ki :

const myText = document.getElementById('myText');

myText.classList.add('boldText');
myText.classList.add('bigText');
console.log(myText.classList); // ['colorText', 'boldText', 'bigText'];

Peki bir CSS class'ını kaldırmak istiyorsak ne yapacağız işte burada da classList.remove() yöntemi devreye girmektedir. :

const myText = document.getElementById('myText');

myText.classList.remove('bigText');
console.log(myText.classList); // ['colorText', 'boldText'];

Sonuç olarak ; 

classList  özelliği JavaScript içinde HTML öğelerini ve bunların CSS sınıflarını değiştirebilme imkanını bize yüksek performans ve işlevsellik ile  sağlamaktadır.