时间 and cookie

来源:互联网 发布:绿色版的软件 编辑:程序博客网 时间:2024/06/08 11:31

 

好久没写博了,睡不着,爬起来写写,嘿嘿。

时间对象一般写法

var today =new Date()

一般都这么写,可是你真正知道这是什么意思吗?

恩,就是创建一个时间对象,他有很多的方法

如:today.getYear()  (Ps:最好用today.getFullYear(),这个比较标准,在1900-2000,用第一个会出错)

因为经常用,所以知道这个是当天的时间对象

所以了,可以设置不是当天的时间对象了。

有5中写法  (里面什么都不写默认是当天的)

 

new Date("mm dd,yy hh:mm:ss")

new Date("mm dd,yy")

new Date(yy,mm,dd,hh,mm,ss)

new Date(yy,mm,dd)             (我一般用这中,好用呀!)

new Date(milliseconds)         ( 貌似这个是根据距离1970,1,1到现在的毫秒数来的)

 

 

一个简单的例子

如2008.08.08号是星期几了

 

<script>

var day = new Date(2008,7,10)

Day = (day.getDay()==0?'天':ay.getDay())

alert("2008.8.8是星期"+Day)

</script>

有些东西还是要注意的 3个参数里面  月的取直范围是0-11 ,0代表1月,11代表12月

在getDay()的直是0-6,0是代表的星期天

 

 

记录几个方法。。。。。。

 

today.getMonth()                 本地当前的月            0-11

today.getDate()                  本地当前月的日期        1-31

today.getDay()                   星期几                  0-6(星期天是0)

today.getHours()                 小时                    0-23

today.getMinutes()               分钟                    0-59

today.getSeconds()               秒                      0-59

today.getTime()                                          1997.1.1至今的毫秒数。

 

1970.1.1为格林威治标准时间区

 

 

在记录一个简单的例子

如想在首页上显示 2008.08.08  20:00:00 星期天  秒动态改变

 

 

<body>

<span id='timeshow'></span>

<script>

var weeks=["星期天","星期一","星期二","星期三","星期四","星期五","星期六"]

function $$(tt){return tt<10?"0"+tt:tt};

function set(){

    var today   = new Date();

    var year  = today.getFullYear();

    var month = $$(today.getMonth());

var day   = $$(today.getDate());

var hour  = $$(today.getHours() );

var minu  = $$(today.getMinutes());

var second= $$(today.getSeconds());

var week  = weeks[today.getDay()]

document.getElementById('timeshow').innerHTML = year+'年'+month+'月'+day+'号'+' '+hour+'时'+minu+'分'+second+'秒'+ ' '+week 

}

setInterval(set,1000)

</script>

</body>

 

确实很臃肿啊,其实也有比较容易的写法了。。。

 

<script>
var today =new Date()
alert( today.toLocaleString()+'  星期'+'天一二三四五六'.charAt(today.getDay()))
</script>

(Ps:ie ff 可以  google的浏览器无效)

 

 

除了获取时间的方法,还有设置时间的方法。。。。。。

写个简单的例子

今天到指定日期的倒计时小程序。。

<script>

var today =new Date()

var tomorry = today.setDate(today.getDate()+1)

alert(tomorry.getDate())

</script>

得到的是毫秒数

 

在写一个离子

倒计时的小程序.

<body>

<span id='ss'></span>

<script>

var timediff

function Countdown(time){  //'2010-8-8-12-12-12'

var arg = time.split('-');

for(var i=0;i<6;i++)

{if(!arg[i])arg.push(0)}

timediff = Date.parse((new Date(arg[0],arg[1],arg[2],arg[3],arg[4],arg[5])).toString()) - Date.parse((new Date()).toString());

    timediff   = timediff/1000;

    var day    = count(timediff,60*60*24);

var hour   = count(timediff,60*60);

    var minu   = count(timediff,60);

var second = timediff

    document.getElementById('ss').innerHTML=day+'天'+hour+'时'+minu+'分'+second+'秒';

}

function count(num,units){

timediff = timediff -parseInt(num/units)*units

return parseInt(num/units);

}

setInterval(function(){Countdown('2010-3-20');},1000)

</script>

</body>

 

Date.parse("datestring")             将日期字符串转化为整数 

Date.parse方法是Date对象的一个静态方法,其作用是“解析一个包含日期的字符串,并返回该日期与 1970 年 1 月 1 日午夜之间所间隔的毫秒数”。

一个简单的用法

var today =new Date();

Date.parse(today.toString());

 

cookie

cookie是存于用户硬盘的一个文件,这个文件通常对应于一个域名.(cookie可以跨域吗? 不知道啊)。

 

如何读取cookie了

<script>
alert(document.cookie)
</script>

 

设置cookie

<script>
document.cookie="time=ss"
</script>

有些情况要说明下的

=后面如果是中文 尽量加上document.cookie="time="escape('你好'),在获取后,unescape就ok了.

还可以设置个时间,多厂时间后cookie会失效

document.cookie="time=ss;expires="+time // time是个多长时间的数,是毫秒数

写个简单的例子。

<script>
var today  = new Date()
today.setTime(today.getTime()+10*1000)  //10秒后过期
document.cookie="time=ss;expires="+today.toGMTString();
alert(document.cookie)
</script>

 

获取指定cookie名称的值

因为cookie是返回的一个字符串,所以可以根据正则表达式来写.(Ps网上流传着一中通用的函数,不过自己写不需要通用拉)

<script>

document.cookie="time=ss;

alert(/time=/w+/.exec(document.cookie).toString());
</script>

 

删除指定名称的cookie

其实就是时间设置成现在时间的以前时间

<script>
document.cookie = "time=ss";
alert(document.cookie);
var d = new Date(2000,1,1);
document.cookie ="time=;expires= " + d.toGMTString();
alert(document.cookie);
</script>

 

记录一个cookie和时间一起用的例子

900豪秒后归零  且刷新不重来

<body></body>
<script>
var i=60*15;
function $(Id){return document.getElementById(Id)}
function create(elm,parent,fn){
    var obj = document.createElement(elm)
    if(fn)fn(obj)
    parent.appendChild(obj)
}
create('div',document.body,function(obj){obj.id='show';})
var timer =setInterval(function(){
var rs=/time=/w+/.exec(document.cookie);
    if(rs==null)
    {
        document.cookie="time="+i;
        $('show').innerHTML=i;
    }
    else
    {
        var num = parseInt(//d+/.exec(rs.toString()));
        if(num!=0)
        {
            num--;
            $('show').innerHTML=num;
            document.cookie="time="+num
        }
        else
        {
             clearTimeout(timer);
             var   d   =   new   Date(2000,1,1);
             document.cookie   ="time=;expires= " + d.toGMTString() 
        }
    }
},1)
</script>

原创粉丝点击