javascript中实现读取指定格式的日期(format)
javascript
的编码能力比较弱,但并不代码它不能做,只不过,需要你花一点功夫,前段时间在做日历的时候,需要从textbox读取日期,问题的关键是textbox
的日期可能是美国标准,可能是中国标准等等,没有办法将之转成日期格式,也就不能将日期在日历中定位到当天。在csdn上问了一个问题,结果没有人答得合
适,我一怒之下,自儿写了一个,还行,能用。
说说需求吧,基本上很简单,就是能识别yyyymmdd及yymd这样的日期格式,或者yy、yyyy、M、MM、d、dd的任意组合。如yyyy年MM
月dd日,匹配2009年06月10日。
先看代码吧:
//将字符串转换为日期
String.prototype
.toDate
=
function
(
format)
{
pattern =
format.replace
(
"yyyy"
,
"(\~
1{4})"
)
.replace
(
"yy"
,
"(\~
1{2})"
)
.replace
(
"MM"
,
"(\~
1{2})"
)
.replace
(
"M"
,
"(\~
1{1,2})"
)
.replace
(
"dd"
,
"(\~
1{2})"
)
.replace
(
"d"
,
"(\~
1{1,2})"
)
.replace
(
/~1/g
,
"d"
)
;
var
returnDate;
if
(
new
RegExp(
pattern)
.test
(
this
)
)
{
var
yPos =
format.indexOf
(
"yyyy"
)
;
var
mPos =
format.indexOf
(
"MM"
)
;
var
dPos =
format.indexOf
(
"dd"
)
;
if
(
mPos ==
-
1
)
mPos =
format.indexOf
(
"M"
)
;
if
(
yPos ==
-
1
)
yPos =
format.indexOf
(
"yy"
)
;
if
(
dPos ==
-
1
)
dPos =
format.indexOf
(
"d"
)
;
var
pos =
new
Array(
yPos +
"y"
,
mPos +
"m"
,
dPos +
"d"
)
.sort
(
)
;
var
data =
{
y:
0
,
m:
0
,
d:
0
}
;
var
m =
this
.match
(
pattern)
;
for
(
var
i =
1
;
i &
lt;
m.length
;
i++
)
{
相关文档:
<script>
///用户数据结构
function _tagUser()
{
this.UserId = 0; //0-4
this.UserName = ""; //5-
this.Parse = function(VarTypeUser)
{
for (var i=0;i<VarTypeUser.length;i++)
VarTypeUser[i] = String.fro ......
JavaScript 的成功让人津津乐道,为 Web 网页编写 JavaScript 代码已经是所有 Web 设计师的基本功,这门有趣的语言蕴藏着许多不为人熟知的东西,即使多年的 JavaScript 程序员,也未能完全吃透。本文从7个方面讲述 JavaScript 中那些你不很熟知但非常实用的技巧。
简略语句
JavaScript 可以使用简略语句快速创建对象和数 ......
1. document 实际上是 window 对象的属性.用于访问文档的信息.
alert(window.document == document); //outputs "true"
2. location 对象是 window 对象和 document 对象的属性,所以下面两个引用互相等价.用于访问URL的信息.
window.location;
document.location;
3. n ......
JavaScript 是一款强大的广泛运用于现代Web站点及应用的脚本语言。作为一个技艺精湛的 Web 开发者,掌握JavaScript可以增强用户的使用体验,提供交互及富客户端等功能。
尽管JavaScript 的语法非常简单,但对于写程序而言仍然是困难重重,就是因为它的运行环境:基于Web浏览器。
以下您可以看到收集的8个实用的 JavaScrip ......