Javascript ile bir metin içindeki karakterleri rastgele karıştırmak

0

Javascript ile karakter karıştırması yapmak istiyorum. Elimde "EEEEEKKKLLLLLL" gibi bir metin var. Bunu rastgele harfler karışacak şekilde "EKLEEELLKK" gibi bir karıştırma yapmak istiyorum.

Javascript'te hazır metin karıştırma fonksiyonu var mı? Javascript ile metin karıştırma nasıl yapılır?

Anonim Anonim (156)
3 yıl önce sordu

    Toplam 1 Cevap


    0

    Javascript'te yerleşik bir karıştırma fonksiyou yok. Fakat string karıştırmak için şu yöntemi kullanabilirsin

    String.prototype.karistir = function () {
                    var c = this.split(""), n = c.length;
                    for (var i = n - 1; i > 0; i--) {
                        var j = Math.floor(Math.random() * (i + 1));
                        var tmp = c[i];
                        c[i] = c[j];
                        c[j] = tmp;
                    }
                    return c.join("");
                }

    Bu kodu kullandığında herhangi bir veri de .karistir() dediğin zaman sana karıştırılmış olarak sonuç döndürülecektir.

    Kullanılan algoritma  Fisher–Yates shuffle algoritması. Tüm karakterler arasında gezinen bir döngü içinde dizideki elemanın değeri geçici bir değişkene atanıyor ve daha sonra bu değer başka bir dizideki elemanın değeri ile değiştiriliyor.
    Bu işlem metnin uzunluğu dahilinde üretilen rastgele bir sayı ile yapılıyor. Sonuçta ortaya karışık bir metin çıkıyor.

    Javascript ile bir metin içindeki karakterleri karıştırmak istiyorsan kullanabileceğin güzel bir yöntem.

    alattin alattin (16999)
    3 yıl önce cevaplandı

      üyelik gerektirir

      Cevap yazabilmek için üye girişi yapmalısınız.

      Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
      uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol