Dize Doğrulama Yöntemleri – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları
Dize ve Sayısal Yöntemlerle Temel JavaScript Doğrulaması
Kullanıcı girişini doğrulamanın en kolay yolu, dize ve sayısal yöntemler kullanmaktır. Veri türleri ve koşulları hakkında konuştuğumda bunların çoğunu ele aldım, ancak burada onları özetleyeceğim.
Dize Doğrulama Yöntemleri
Doğrulama için en kullanışlı dize yöntemleri şunlardır:
• charAt(n): 0’dan başlayarak dizedeki n’inci konumdaki karakteri döndürür.
• charCodeAt(n): 0’dan başlayarak dizgenin n’inci konumundaki Latin-1 ASCII karakter değerini döndürür.
• indexOf(arama): Ana dizge içindeki aramanın konumunu döndürür. Arama bulunamazsa -1 döndürür.
• lastIndexOf(arama): Ana dizge içinde aramanın son konumunu döndürür. Arama bulunamazsa -1 döndürür.
• dilim(başlangıç,bitiş): Dizenin başlangıç ve bitiş arasındaki kısmını döndürür. Bir bitiş değeri sağlamazsanız, dizenin geri kalanını döndürür.
• split(search): Dizeyi, aramayı çevreleyen ana dize parçalarıyla birlikte bir diziye böler. Arama teriminin kendisi bu dizinin parçası değil.
Diğer, daha güçlü, dize yöntemleri, arama, değiştirme ve eşleştirme, normal ifadelerle çalışır. Bunlardan birazdan bahsedeceğiz. Ardından, değerin uzunluğunun 0 olmadığını doğrulayarak alana bir değer girilip girilmediğini test edersiniz; eğer öyleyse, bir hata mesajı görüntüledikten sonra false döndürerek form gönderimini durdurursunuz.
Geçerli sayıların ilk rakam olmayan karakter olarak yalnızca eksi olması gerektiğinden değerin eksi içerip içermediğini test edersiniz (indexOf() geri dönmez – 1) ve substring() kullanan ilk karakter olup olmadığı önemlidir.
Kullanıcı -12-12 girmiş olabileceğinden bu yeterli değildir, bu da lastIndexOf() öğesinin indexOf() öğesinden farklı olup olmadığını kontrol etmeniz gerektiği anlamına gelir. Bu, yalnızca birden fazla eksi işareti olduğunda geçerli olabilir. Birden fazla eksi varsa veya başında değilse, bir hata gösterir ve false döndürürsünüz.
Değerde geçersiz karakter olup olmadığını test etmek için charCodeAt() yöntemini kullanın. Yalnızca eksi işaretlerine (45), ondalık basamaklara (46) veya 0 ila 9 (48 ila 57) arasındaki sayı karakterlerine izin verilir. Dize boyunca her seferinde bir karakter dolaşın ve ASCII kodu bu aralığın dışında olan herhangi bir karakter varsa, bir hata mesajı görüntüleyin ve false döndürün.
Daha karmaşık bir örnek, geçerli e-posta sözdizimini test etmektir. Bir e-posta yalnızca bir @ içermeli ve önceki kullanıcı adı bölümü nokta veya kısa çizgi ile başlamamalı ve nokta ile bitmemelidir. @’den sonraki alan kısmı nokta veya tire ile başlamayabilir veya bitmeyebilir. Her iki bölüm de yalnızca a’dan z’ye, 0’dan 9’a kadar olan karakterleri, noktaları, alt çizgileri ve kısa çizgileri içerebilir.
Gerekli form alanını kontrol ederek ve değerini alarak başlarsınız. Hata mesajlarını saklamak için error adında bir değişken tanımlayın. Bu örnekte, buna yalnızca satır uzunluğunu sınırlamak için ihtiyacınız var, ancak bölümün sonundaki form örneğinde buna geri döneceğiz.
Değer uzunluğunu 0 ile karşılaştırarak kullanıcının bir e-posta girip girmediğini test edin; bir uyarı görüntüleyin ve alanda hiçbir şey yoksa form gönderimini iptal edin.
indexOf() kullanarak e-postanın @ işareti içerip içermediğini ve indexOf() ve lastIndexOf() tarafından döndürülen değerleri karşılaştırarak bunlardan yalnızca birine sahip olup olmadığını test edin.
Tarayıcınızda Java etkin değil
Tarayıcınızda Java etkin değil Chrome
Edge Java etkinleştirme
Firefox Java etkinleştirme
Java destekleyen tarayıcılar
Java applet Eklentisi indir
Internet Explorer Java etkinleştirme
Java indir
Ad yalnızca sayı, harf, tire, alt çizgi ve nokta içerebilir. CheckValidCharacters() yardımcı işlevi bunu doğrulamakla ilgilenir ve buna göre doğru veya yanlış döndürür. Kullanıcı adında geçersiz karakterler varsa, bunu kullanıcıya bildirir ve form gönderimini iptal edersiniz.
Ardından, e-postanın etki alanı olan ikinci “parçayı” alın ve dizenin ne başlangıcının ne de bitişinin kısa çizgi veya nokta olmadığından emin olun. Aksi takdirde, kullanıcıyı uyarın ve form gönderimini iptal edin.
CheckValidCharacters() yardımcı işlevinde, dizenin tüm uzunluğu boyunca (n parametresi olarak gönderilir) döngü yaparsınız ve dizedeki karakterlerin her birinin charCode’unun izin verilen karakter aralığının dışına çıkmadığından emin olursunuz.
Karakter kısa çizgi (45) veya nokta (46) veya alt çizgi (96) veya a’dan z’ye herhangi bir karakter (97 ila 122) veya 0 ila 9 (48 ila 57) arasında herhangi bir karakter değilse, işlev false döndürür. . Aksi takdirde true döner.
Sayı kontrol örneği biraz dolambaçlı görünüyor ve gerçekten de öyle. Sayısal doğrulama ve karşılaştırma için, sayısal doğrulama yöntemlerini kullanmanız normalde çok daha iyidir.
Sayısal Doğrulama Yöntemleri
• Number(): Parantez içindeki değişkenin değerini sayıya dönüştürmeye çalışır.
• isNaN( n ): n’nin bir sayı (kayan veya tamsayı) olup olmadığını test eder ve değilse doğru döndürür.
• parseFloat( n ): n’yi bir kayan noktalı sayıya dönüştürmeye çalışır. Bir sayıda kullanılamayan bir karakterle karşılaşana kadar, karakter dizisini soldan sağa doğru ayrıştırır. Daha sonra bu noktada durur ve bu diziyi bir sayı olarak değerlendirir. Bir sayıda ilk karakter kullanılamıyorsa, sonuç NaN – Sayı Değildir.
• parseInt( n ): Sayıyı yukarı veya aşağı yuvarlamadan herhangi bir kesirli kısmı kaldırarak n’yi bir tam sayıya dönüştürür. İşleve geçirilen tüm sayısal olmayan karakterler atılacaktır. İlk karakter +, – veya bir rakam değilse, sonuç NaN’dir.
Gerçek bir sayıyı test etmek gibi, söz konusu doğrulama matematiksel ise, matematiksel yöntemlerin kullanımı çok daha kolaydır. Daha önce bahsedilen isNumber() işlevi, parametresi bir sayı olmadığında true değerini döndüren bir yöntem olan isNaN()’ı kullanacak şekilde yeniden yazarsanız çok daha basittir.
Daha karmaşık bir örnek, bir tarihin doğru biçim olup olmadığını kontrol etmektir. Tarihlerle ilgili en büyük sorun, düz bir algoritma izlememeleridir; ayda 10 gün, yılda 10 ay vb. olsaydı işler çok daha kolay olurdu. Olduğu gibi, birçok ayrıntıyı kontrol etmeniz gerekir:
• Ay 1 ile 12 arasında mı?
• Ay içinde gün var mı, örneğin, 31.04.2000?
• Yıl, 29 Şubat’ı mümkün kılan artık bir yıl mı?
Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır.
1) Backlink Paketi 50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)