js实现php中的date方法

问题描述

functiondate(format,timestamp){vara,jsdate=((timestamp)?newDate(timestamp):newDate());varpad=function(n,c){if((n=n+"").length<c){returnnewArray(++c-n.length).join("0")+n;}else{returnn;}};vartxt_weekdays=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];vartxt_ordin={1:"st",2:"nd",3:"rd",21:"st",22:"nd",23:"rd",31:"st"};vartxt_months=["","January","February","March","April","May","June","July","August","September","October","November","December"];varf={//Dayd:function(){returnpad(f.j(),2);},D:function(){t=f.l();returnt.substr(0,3);},j:function(){returnjsdate.getDate();},l:function(){returntxt_weekdays[f.w()];},N:function(){returnf.w()+1;},S:function(){returntxt_ordin[f.j()]?txt_ordin[f.j()]:'th';},w:function(){returnjsdate.getDay();},z:function(){return(jsdate-newDate(jsdate.getFullYear()+"/1/1"))/864e5>>0;},//WeekW:function(){vara=f.z(),b=364+f.L()-a;varnd2,nd=(newDate(jsdate.getFullYear()+"/1/1").getDay()||7)-1;if(b<=2&&((jsdate.getDay()||7)-1)<=2-b){return1;}else{if(a<=2&&nd>=4&&a>=(6-nd)){nd2=newDate(jsdate.getFullYear()-1+"/12/31");returndate("W",Math.round(nd2.getTime()/1000));}else{return(1+(nd<=3?((a+nd)/7):(a-(7-nd))/7)>>0);}}},//MonthF:function(){returntxt_months[f.n()];},m:function(){returnpad(f.n(),2);},M:function(){t=f.F();returnt.substr(0,3);},n:function(){returnjsdate.getMonth()+1;},t:function(){varn;if((n=jsdate.getMonth()+1)==2){return28+f.L();}else{if(n&1&&n<8||!(n&1)&&n>7){return31;}else{return30;}}},//YearL:function(){vary=f.Y();return(!(y&3)&&(y%1e2||!(y%4e2)))?1:0;},//onotsupportedyetY:function(){returnjsdate.getFullYear();},y:function(){return(jsdate.getFullYear()+"").slice(2);},//Timea:function(){returnjsdate.getHours()>11?"pm":"am";},A:function(){returnf.a().toUpperCase();},B:function(){//peterpaulkoch:varoff=(jsdate.getTimezoneOffset()+60)*60;vartheSeconds=(jsdate.getHours()*3600)+(jsdate.getMinutes()*60)+jsdate.getSeconds()+off;varbeat=Math.floor(theSeconds/86.4);if(beat>1000)beat-=1000;if(beat<0)beat+=1000;if((String(beat)).length==1)beat="00"+beat;if((String(beat)).length==2)beat="0"+beat;returnbeat;},g:function(){returnjsdate.getHours()%12||12;},G:function(){returnjsdate.getHours();},h:function(){returnpad(f.g(),2);},H:function(){returnpad(jsdate.getHours(),2);},i:function(){returnpad(jsdate.getMinutes(),2);},s:function(){returnpad(jsdate.getSeconds(),2);},//unotsupportedyet//Timezone//enotsupportedyet//InotsupportedyetO:function(){vart=pad(Math.abs(jsdate.getTimezoneOffset()/60*100),4);if(jsdate.getTimezoneOffset()>0)t="-"+t;elset="+"+t;returnt;},P:function(){varO=f.O();return(O.substr(0,3)+":"+O.substr(3,2));},//Tnotsupportedyet//Znotsupportedyet//FullDate/Timec:function(){returnf.Y()+"-"+f.m()+"-"+f.d()+"T"+f.h()+":"+f.i()+":"+f.s()+f.P();},//rnotsupportedyetU:function(){returnMath.round(jsdate.getTime()/1000);}};returnformat.replace(/[\]?([a-zA-Z])/g,function(t,s){if(t!=s){//escapedret=s;}elseif(f[s]){//adatefunctionexistsret=f[s]();}else{//nothingspecialret=s;}returnret;});}

时间: 2024-07-31 03:45:33

js实现php中的date方法的相关文章

js改变Iframe中Src的方法

  本文实例讲述了js改变Iframe中Src的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> <meta name="GENE

详解js私有作用域中创建特权方法_javascript技巧

本文实例分享了js私有作用域中创建特权方法,供大家参考,具体内容如下 特权方法就是有权访问私有变量和私有函数的公有方法: function MyObject(){ var privateVariable = 10; function privateFunction(){ return false; } this.publicMethod = function(){ privateVariable ++; return privateFunction(); }; } var x = new MyO

js改变Iframe中Src的方法_javascript技巧

本文实例讲述了js改变Iframe中Src的方法.分享给大家供大家参考.具体实现方法如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> <meta name="GENERATOR" content="Microsoft Visual Studio .N

jQuery及JS实现循环中暂停的方法_javascript技巧

本文实例讲述了jQuery及JS实现循环中暂停的方法.分享给大家供大家参考.具体分析如下: 问题: jquery对数组进行循环,如果要求每次循环的时候暂停2秒钟,在使用jQuery的.earch循环的时候,无论怎么设置,都不会暂停. setTimeout也只是在第一次执行的时候暂停. 原因猜测: js开始执行多线程? 改进: 改为setInterval来控制循环,达到数组最大值的时候,clearInterval取消循环. 以下是jQuery代码: <script type="text/ja

JS删除字符串中重复字符方法

 这篇文章主要介绍了JS如何删除字符串中重复字符,需要的朋友可以参考下  代码如下: <!DOCTYPE html>  <html>  <head>  <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">  </script>  <script>  $(document).ready(function(){  $(&quo

用JS快速保存网页中所有图片的方法

js|网页 打开一个欲保存所有图片的页面,然后在地址栏中输入以下代码 程序代码: javascript:Ai7Mg6P='';for%20(i7M1bQz=0;i7M1bQz<document.images.length;i7M1bQz++){Ai7Mg6P+='<img%20src='+document.images[i7M1bQz].src+'><br>'};if(Ai7Mg6P!=''){document.write('<center>'+Ai7Mg6P+'

ASP.NET中用js取CheckBoxList中值的方法实例

用脚本取CheckBoxList中的值,并用"|"将其分开,之后将取到的值放入文本框,返回数据库做添加或者修改   做的一些项目都比较小,而且时间紧,有好多东西都没来得急总结,趁这会还有点时间把前面项目中的用到的知识点分享下,只为以后方便使用. 前台页面代码 复制代码 代码如下: <!--关键字-->     <div id="keyWordsDiv" style="border: 2px solid #6FA1D9; display:

JS删除字符串中重复字符方法_javascript技巧

复制代码 代码如下: <!DOCTYPE html> <html> <head> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"> </script> <script> $(document).ready(function(){ $("button").click(function(){ var s

ASP.NET中用js取CheckBoxList中值的方法实例_实用技巧

做的一些项目都比较小,而且时间紧,有好多东西都没来得急总结,趁这会还有点时间把前面项目中的用到的知识点分享下,只为以后方便使用.前台页面代码 复制代码 代码如下: <!--关键字-->    <div id="keyWordsDiv" style="border: 2px solid #6FA1D9; display: none; position: absolute;        top: 0px; left: 0px; width: 260px; he