String to Array
Bir String ifadeyi veya değişkeni belirtilen karakter dizine bölerek bir Array türünde değişken elde edilebilir. Bunun için kullanılacak String metotu split‘tir. Kullanımı
string.split(ayırıcı, limit);
- Ayrıcı : İsteğe bağlı. String ifadeyi ayırmak için string içinde aranacak karakter(ler)dir. Ayrıcı için bir düzenli ifade (RegExp) ‘de kullanılabilir. Ayırıcı karakter aranacak string içinde bulunursa bulduğu karakterden string‘i böler ve geriye aranacak karakter olmadan böldüğü değerleri array olarak geri döndürür. Herhangi bir karakter bulamadığı taktirde string ifadesinin tamamını tek bir dize (array) içerisine koyarak geri döndürür. Eğer ayrıcı parametresi atlanırsa da bütün string tek bir dizi (array) içinde döner. Ayırıcı olarak undefined veya null girilirse yine bütün string tek bir dizeye aktarılır. Eğer ayrıcı boş olarak belirtilir ise split komutu string içindeki karakter kümesini harf harf ayırarak bir dizeye aktarır.
- limit : İsteğe bağlı. Bölmelerin sayısına bir sınır belirlemek için kullanılır. Belirtilen sınır miktarından daha fazla sayıda array nesnesi elemanı oluşturmaz. Eğer bu sayı 0 (sıfır) girilirse boş bir array döndürmesine sebep olur. Bu parametre negatif olmayan bir tam sayı olarak belirtilir.
var aylarString = "Ocak, Şubat, Mart, Nisan, Mayıs, Haziran, Temmuz, Ağustos, Eylül, Ekim, Kasım, Aralık"; var aylarArray = aylarString.split(', '); console.log(aylarArray) ; // Geri dödnen array şu şekilde olacaktır. // ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"] var ilkUcAy = aylarString.split(',',3); console.log(ilkUcAy); // ["Ocak", " Şubat", " Mart"] // Düzenli ifadeye örnek (RegExp); var cumle = "Ahmet 2)Mehmet 3)Serhat"; console.log(cumle.split(/[0-9])/g).toString()); //Ahmet ,Mehmet ,Serhat
Kaynaklar : https://developer.mozilla.org
var ilkUcAy = aylarString.split(',',3);
Arrayler 0 dan başlayacağından burada ocak subat mart nisanı getirmez mi ? yani [3] = Nisan değil mi ?
console.log(ilkUcAy);
// [“Ocak”, ” Şubat”, ” Mart”]
Hayır!. Buradaki split komutunun ikinici parametresi olan limit parametresi bahsettiğiniz gibi işlem yapmıyor. limit parametresi bölmelerin sayısına bir sınır belirlemek için kullanılır. Dolayısıyla limit parametresi Array’deki gibi 0’dan değil, 1 ‘den başlar. Yorumun için teşekkürler.