原帖地址:http://www.codetoad.com/forum/17_10053.asp
我筛选了,大致的方法有以下几个。
function myIsDate(mystring)
{//--BOF
var mystring, myresult ;
var mystring = new Date(mystring);
isNaN(mystring)? myresult=false : myresult=true ;
return myresult ;
//--EOF
}
//我的测试
alert(IsDate('2009/10/10')); //true
alert(IsDate('2010/07/00')); //true
alert(IsDate('2009/02/30')); //true
alert(IsDate('200k/10/10')); //false
alert(IsDate('2009/13/10')); //true
alert(IsDate('200k-10-10')); //false
//失败
function isDate (value)
{
return (!isNaN (new Date (value).getYear () ) ) ;
}
//我的测试
alert(IsDate('2009/10/10')); //true
alert(IsDate('2010/07/00')); //true
alert(IsDate('2009/02/30')); //true
alert(IsDate('200k/10/10')); //false
alert(IsDate('2009/13/10')); //true
alert(IsDate('200k-10-10')); //false
//失败
// 这个可以,稍微改改,加上匹配'2010-01-10'就好了。
// ******************************************************************
// This function accepts a string variable and verifies if it is a
// proper date or not. It validates format matching either
// mm-dd-yyyy or mm/dd/yyyy. Then it checks to make sure the month
// has the proper number of days, based on which month it is.
// The function returns true if a valid date, false if not.
// ******************************************************************
function isDate(dateStr) {
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null) {
alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
return false;
}
month = matchArray[1]; // p@rse date into variables
day = matchArray[3];
year = matchArray[5];
if (month < 1 || month > 12) { // check month range
alert("Month must be between 1 and 12.");
return false;
}
if (day < 1 || day > 31) {
alert("Day must be between 1 and 31.");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Month "+month+" doesn`t have 31 days!")
return false;
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day==29 && !isleap)) {
alert("February " + year + " doesn`t have " + day + " days!");
return false;
}
}
return true; // date is valid
}
function IsDate(dateval){
var arr = new Array();
if(dateval.indexOf("-") != -1){
arr = dateval.toString().split("-");
}else if(dateval.indexOf("/") != -1){
arr = dateval.toString().split("/");
}else{
return false;
}
//yyyy-mm-dd || yyyy/mm/dd
if(arr[0].length==4){
var date = new Date(arr[0],arr[1]-1,arr[2]);
if(date.getFullYear()==arr[0] && date.getMonth()==arr[1]-1 && date.getDate()==arr[2]){
return true;
}
}
//dd-mm-yyyy || dd/mm/yyyy
if(arr[2].length==4){
var date = new Date(arr[2],arr[1]-1,arr[0]);
if(date.getFullYear()==arr[2] && date.getMonth()==arr[1]-1 && date.getDate()==arr[0]){
return true;
}
}
//mm-dd-yyyy || mm/dd/yyyy
if(arr[2].length==4){
var date = new Date(arr[2],arr[0]-1,arr[1]);
if(date.getFullYear()==arr[2] && date.getMonth()==arr[0]-1 && date.getDate()==arr[1]){
return true;
}
}
return false;
}
alert(IsDate('2009/10/10')); //true
alert(IsDate('2010/07/00')); //false
alert(IsDate('2009/02/30')); //false
alert(IsDate('200k/10/10')); //false
alert(IsDate('2009/13/10')); //false
alert(IsDate('200k-10-10')); //false
alert(IsDate('2000-02-29')) //true
alert(IsDate('2100-02-29')) //true
//就是你了
//匹配//yyyy-mm-dd || yyyy/mm/dd
function isDate(str)
{
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(r==null)return false; var d = new Date(r[1], r[3]-1, r[4]);
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}
//这个也行!
分享到:
相关推荐
以上就是JavaScript版的DateAdd、DateDiff和IsDate函数的基本实现。这些自定义函数可以方便地在JavaScript环境中处理日期和时间的操作,尤其是在不支持ES6及以上版本的浏览器中,它们能提供类似.NET和VBScript的日期...
- `CREATE OR REPLACE FUNCTION isdate(in_date text)`:此行声明了一个名为`isdate`的新函数,该函数接受一个文本类型的参数`in_date`。 - `RETURNS integer`:指明函数返回类型为整型(integer)。 2. **函数体**...
根据提供的文件信息,我们可以归纳...通过以上总结,我们可以看到在B/S架构的开发中,JavaScript提供了强大的功能,不仅能够处理各种数据验证逻辑,还可以实现对用户输入的有效控制,从而提高系统的稳定性和用户体验。
vb 判断字符串是否为日期或时间,在输入框输入任意字符串类型,程序将会判断出该字符串是否是时间字符串,这个判断方法VB员自带有函数,使用IsDate即可实现,下面是使用IsDate的简单用法示例: If IsDate(Text1) =...
function isDate(theStr) { var the1st = theStr.indexOf("-"); var the2nd = theStr.lastIndexOf("-"); if (the1st === the2nd) { return false; } else { var y = theStr.substring(0, the1st); var m = ...
在JavaScript编程中,掌握一些实用的工具函数可以显著提高开发效率和代码质量。本文将介绍超过50个这样的工具函数,这些函数涵盖了数据类型的检查、对象的验证以及其他辅助功能。 1. `isStatic` 函数用于检测一个值...
函数`isDate(dateVal)`用于验证一个值是否可以转换为日期对象。首先,它将输入的日期字符串(通常格式为"yyyy-mm-dd")中的连字符替换为斜杠,然后尝试创建一个新的Date对象。如果创建成功,返回`true`,否则返回`...
根据提供的文件信息,我们可以归纳出一系列与JavaScript相关的验证方法,这些方法主要针对常见的数据格式进行有效性检查。下面将详细介绍每个函数的功能、实现逻辑及其应用场景。 ### 1. 判断变量是否为空 (IsNull)...
- `isDate`: 验证输入的日期格式是否正确。 - `isPastDate` 和 `isFutureDate`: 检查日期是否在当前之前或之后。 6. **自定义验证** - 通过编写自定义函数,可以实现特定业务场景下的验证需求,例如检查输入是否...
导致数据库跑任务出现... javascript代码 代码如下: //判断日期是否合法 function IsDate(oTextbox) { var regex = new RegExp(“^(?:(?:([0-9]{4}(-|\/)(?:(?:0?[1,3-9]|1[0-2])(-|\/)(?:29|30)|((?:0?[13578]|1[02])
- **isDate(birthday)** 用于验证生日字段的格式是否正确。虽然具体的实现代码未给出,但通常需要检查日期是否符合预设格式(如YYYY-MM-DD)。 - 示例:如果生日格式不正确,则弹出警告框提示用户。 - **isEmail...
在JavaScript中,数据类型验证是一个非常基础且重要的知识点,对于初学者和经验丰富的开发者来说,能够准确地识别变量的数据类型是非常有帮助的。本文将详细阐述JavaScript中各种数据类型的验证方法,以及自定义验证...
`isDate`函数验证输入的字符串是否符合日期格式(如"2010-5-16")。它首先检查字符串是否为空,然后使用正则表达式匹配日期格式,接着创建`Date`对象。如果格式正确,返回`true`,否则返回`false`。 4. **字母数字...
在JavaScript中,数据类型是编程时需要特别注意的一个方面。不同的数据类型有不同的属性和方法,正确地判断数据类型可以帮助我们更好地进行错误处理、功能实现和性能优化。下面将详细介绍如何在JavaScript中判断各种...
function isDate(value) { return value instanceof Date; } function isMap(value) { return value instanceof Map; } function isSet(value) { return value instanceof Set; } function isPromise...
另一个函数`isDate`用来检查字符串是否为一个有效的日期格式。它首先确定字符串中是否存在两个连字符(-),然后通过调用`isBetween`函数检查日期部分是否在合理的范围内。如果字符串包含两个连字符且日期部分有效,...
JavaScript的解释器通常嵌入在浏览器中,被称为JavaScript引擎,使得JavaScript成为客户端脚本语言中的主流。本文将介绍一些实用的JavaScript代码段及其应用方法。 第一个实用的JavaScript代码段是用于判断日期是否...
`IsDate()` 函数用于检查一个值是否是JavaScript的Date对象。这对于处理日期相关的操作特别有用,确保我们不会误将其他类型的值当作日期处理。 ### 二、类型检查的重要性 在JavaScript中,由于其动态类型特性,...