valiDate v2.0

Daha önce ilk versiyonunu sizlerle paylaştığım valiDate metodunu biraz daha geliştirdim. String nesneleri doğrulama amaçlı kullandığım için String nesnesinin prototype’ına ekleyerek herhangi bir metin değişken üzerinde kolayca tarih doğrulaması yapılabilmesine olanak sağladım. Ayraç olarak “-“,” “,“/” ya da “.” karakterlerini kullanıyor, yani doğrulanan metnin ilgili ayraç ile ayrılmış dd.mm.yyyy formatında olmasını bekliyor.

/*
 * valiDate
 * https://www.karalamalar.net/
 *
 * Copyright (c) 2009 İzzet Emre Erkan
 * Licensed under Creative Commons Attribution-Share Alike 3.0 Unported License
 * http://creativecommons.org/licenses/by-sa/3.0/
 *
 * Date: 2009-10-08 16:51:00 +0300 (Thu, 08 Oct 2009)
 * Revision: 6
 */
String.prototype.valiDate =
  function() {
    if(/^(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)[0-9]{2}$/.test(this)) {
      var v = this.replace(/[- /]/g,'.').split('.');
      var d=parseInt(v[0],10), m=parseInt(v[1],10), y=parseInt(v[2],10);
      var o = new Date(y, m - 1, d);
      return o.getDate() == d && o.getMonth() + 1 == m && o.getFullYear() == y;
    }
    else
      return false;
  }

Metodun küçültülmüş halini (640 byte) buradan edinebilirsiniz.

“valiDate v2.0” için bir yorum

Yorumlar kapalı.