- 浏览: 850923 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (1095)
- 大数据存储 (76)
- 编程语言(Java&Scala) (46)
- 大数据建模 (33)
- 开发与管理 (8)
- 操作系统 (13)
- 实用代码集合 (25)
- 新技术研究 (15)
- 前端技术研究 (22)
- 物联网 (18)
- 兴趣探索 (15)
- 编程语言(Groovy&Grails) (92)
- 编程语言(RubyOnRails) (153)
- 个人收藏 (152)
- 技术管理 (12)
- 编程语言(Flex) (8)
- 架构和框架(GWT) (4)
- 数学和算法 (6)
- 人工智能(TensorFlow) (11)
- 编程语言(Python) (6)
- 移动开发 (4)
- 软件工程实践 (54)
- 个人感悟 (6)
- 职场感悟 (5)
- 行业经验 (23)
- 产品和运营 (10)
- 生活与随想 (155)
- 简单生活 (70)
- 天空的云 (53)
- 秋月春风 (14)
- 东逝水 (59)
- 浪花淘 (35)
- 白发渔樵 (4)
最新评论
-
cljhyjs:
今天看看在研究,已经安装好了,请问怎么一步一步使用呢?
Thingsboard -
yx200404:
说一下十维空间 -
Clear_Love:
设置了也报错
Xcode 7遇到 App Transport Security has blocked a cleartext HTTP 错误 -
wang263574375:
我想问的是,如果防火墙的设置不能改变,那么要怎么处理呢?
ORA-12571:TNS包写入程序失败 -
ralflsb:
SmartSVN 8.6
SmartSVN破解包
工作中碰到一个需求,知道一个js字符串“2008-10-31”,得到这个日期所在周及其上一周的第一天和最后一天。
值得一提的是关于周的问题,西方的周的第一天是周日,最后一天是周六。而对于中国来说,习惯上的周的第一天是周一,最后一天是周日。比如说“2008-10-31”按西方来说第一天是:2008-10-26周日,最后一天是“2008-11-01”周六,而我工作中所要用到的周是“中国式”的,第一天是2008-10-27周一,最后一天是2008-11-02周日。
方法如下:
1.编写日期处理函数
2.编写格式化函数,以把得到的日期类型的数字转化成可以自己需要的字符串
3.处理字符串,以使其转换成js的日期类型。
4.调用测试
值得一提的是关于周的问题,西方的周的第一天是周日,最后一天是周六。而对于中国来说,习惯上的周的第一天是周一,最后一天是周日。比如说“2008-10-31”按西方来说第一天是:2008-10-26周日,最后一天是“2008-11-01”周六,而我工作中所要用到的周是“中国式”的,第一天是2008-10-27周一,最后一天是2008-11-02周日。
方法如下:
1.编写日期处理函数
//得到每周的第一天(周一) function getFirstDateOfWeek(theDate){ var firstDateOfWeek; theDate.setDate(theDate.getDate() + 1 - theDate.getDay()); firstDateOfWeek = theDate; return firstDateOfWeek; } //得到每周的最后一天(周日) function getLastDateOfWeek(theDate){ var lastDateOfWeek; theDate.setDate(theDate.getDate() +7 - theDate.getDay()); lastDateOfWeek = theDate; return lastDateOfWeek; } //得到上周的第一天(周一) function getPreviousFirstDateOfWeek(theDate){ var firstDateOfWeek; theDate.setDate(theDate.getDate() - 6 - theDate.getDay()); firstDateOfWeek = theDate; return firstDateOfWeek; } //得到上周的最后一天(周日) function getPreviousLastDateOfWeek(theDate){ var lastDateOfWeek; theDate.setDate(theDate.getDate() +7 - theDate.getDay()); lastDateOfWeek = theDate; return lastDateOfWeek; }
2.编写格式化函数,以把得到的日期类型的数字转化成可以自己需要的字符串
//把时间类型的数字转换为各种需要的字符串 function MM_dateFormat(rq,fenge) { //格式化日期显示 //fenge = 0 :2006-02-28 12:34:23 //fenge = 1 :2006-02-28 //fenge = 2 :2006年2月28日 //fenge = 3 :2月28日 //fenge = 4 :28/2 //fenge = 5 :二○○六年二月二十八日 //fenge = 6 :12:34:23 //fenge = 7 :20060228 if ((fenge==null)||(fenge=="")) fenge = 0; if ((rq =="")||(rq ==null)) var tmpDate = new Date(); else var tmpDate = new Date(rq); var result = ""; switch(fenge) { case 1: result += tmpDate.getFullYear()+"-"; if ((tmpDate.getMonth()+1)<10) result += "0"+(tmpDate.getMonth()+1)+"-"; else result += (tmpDate.getMonth()+1)+"-"; if (tmpDate.getDate()<10) result += "0"+tmpDate.getDate(); else result += tmpDate.getDate(); break; case 2: result = tmpDate.getFullYear()+"年"+(tmpDate.getMonth()+1)+"月"+tmpDate.getDate()+"日"; break; case 3: result = (tmpDate.getMonth()+1)+"月"+tmpDate.getDate()+"日"; break; case 4: result = tmpDate.getDate()+"/"+(tmpDate.getMonth()+1); break; case 5: var zhifu= "○一二三四五六七八九十"; var zhrq =""; var nan = String(tmpDate.getFullYear()); for (iii=0;iii<nan.length;iii++) { zhrq += zhifu.substr(nan.substr(iii,1),1); } zhrq += "年"; var nan = String(tmpDate.getMonth()+1); if (nan.length == 2) { if (nan.substr(0,1)=="1") zhrq += "十"; else zhrq += zhifu.substr(nan.substr(0,1),1)+"十"; if (nan.substr(1,1)=="0") zhrq += "月"; else zhrq += zhifu.substr(nan.substr(1,1),1)+"月" } else { zhrq += zhifu.substr(nan.substr(0,1),1)+"月"; } var nan = String(tmpDate.getDate()); if (nan.length == 2) { if (nan.substr(0,1)=="1") zhrq += "十"; else zhrq += zhifu.substr(nan.substr(0,1),1)+"十"; if (nan.substr(1,1)=="0") zhrq += "日"; else zhrq += zhifu.substr(nan.substr(1,1),1)+"日" } else { zhrq += zhifu.substr(nan.substr(0,1),1)+"日"; } result = zhrq; break; case 6: if (tmpDate.getHours()<10) result += "0"+tmpDate.getHours(); else result += ""+ tmpDate.getHours(); if (tmpDate.getMinutes()<10) result += ":0"+tmpDate.getMinutes(); else result += ":"+ tmpDate.getMinutes(); if (tmpDate.getSeconds()<10) result += ":0"+tmpDate.getSeconds(); else result += ":"+ tmpDate.getSeconds(); break; case 7: result += tmpDate.getFullYear(); if ((tmpDate.getMonth()+1)<10) result += "0"+(tmpDate.getMonth()+1); else result += (tmpDate.getMonth()+1); if (tmpDate.getDate()<10) result += "0"+tmpDate.getDate(); else result += tmpDate.getDate(); break; default: result += tmpDate.getFullYear()+"-"; if ((tmpDate.getMonth()+1)<10) result += "0"+(tmpDate.getMonth()+1)+"-"; else result += (tmpDate.getMonth()+1)+"-"; if (tmpDate.getDate()<10) result += "0"+tmpDate.getDate(); else result += tmpDate.getDate(); if (tmpDate.getHours()<10) result += " 0"+tmpDate.getHours(); else result += " "+ tmpDate.getHours(); if (tmpDate.getMinutes()<10) result += ":0"+tmpDate.getMinutes(); else result += ":"+ tmpDate.getMinutes(); if (tmpDate.getSeconds()<10) result += ":0"+tmpDate.getSeconds(); else result += ":"+ tmpDate.getSeconds(); break; } return result }
3.处理字符串,以使其转换成js的日期类型。
//取得处理字符串,然后转换成日期类型。 var s = "2008-02-15"; s = s+" 00:00:00"; var tD = new Date(Date.parse(s.replace(/-/g, "/")));
4.调用测试
//得到上周的第一天以及最后一天。 var lWeekFirstDay = getPreviousFirstDateOfWeek(tD).toLocaleString(); var lWeekLastDay = getPreviousLastDateOfWeek(tD).toLocaleString(); var ch2 = MM_dateFormat(lWeekFirstDay,7); var ch3 = MM_dateFormat(lWeekLastDay,7); alert("上周一的时间是:" + ch2); alert("上周日的时间是:" + ch3 ); //得到本周的第一天以及最后一天。 var nWeekFirstDay = getFirstDateOfWeek(tD).toLocaleString(); var nWeekLastDay= getLastDateOfWeek(tD).toLocaleString(); var ch = MM_dateFormat(nWeekFirstDay,7); var ch1 = MM_dateFormat(nWeekLastDay,7); alert("本周一的时间是:" + ch); alert("本周日的时间是:" + ch1);
发表评论
-
高维竞争
2019-02-18 15:27 516如果你的工作比较苦逼还不挣钱, 那可能你陷入了艰难困苦的低维竞 ... -
HanLP:面向生产环境的自然语言处理工具包
2018-09-17 18:55 485HanLP:面向生产环境的自然语言处理工具包 -
Kylin 大数据时代的OLAP利器
2018-09-14 13:33 476Kylin 大数据时代的OLAP利器 -
CIO
2018-08-30 11:34 301一个企业的运营过程,不论其身处哪个行业,其实都是一个信 ... -
建一个大数据瓶体,你会怎么选?MPP,Hadoop,还是一体机?
2018-08-29 11:39 516建一个大数据瓶体,你会怎么选?MPP,Hadoop,还是一体机 ... -
数据质量的四种评估标准
2017-11-30 14:36 492数据质量是保证数据应用的基础,它的评估标准主要包括四个 ... -
我国“十三五”国家大数据战略离不开专业的数据中心基础设施运维服务
2017-11-21 15:35 398我国“十三五”国家大数据战略离不开专业的数据中心基础设施运维服 ... -
ORA-27125终极解决方法
2013-02-22 10:10 3456ORA-27125通过修改/proc/sys/vm/huget ... -
DataStage
2011-02-28 16:11 850数据仓库中的数据来自 ... -
本地网络连接不上?试试这样
2010-12-02 13:25 930网络突然连接不上,不知道为什么,昨天还是好好的。 自己连接报网 ... -
数据分析
2010-10-17 07:26 830数据分析是指用适当的统计方法对收集来的大量第一手资料和第二手资 ... -
数据挖掘技术
2010-10-08 00:26 1139数据挖掘涉及的学科领域和方法很多,有多种分类法。根据挖掘任务分 ... -
BI项目的实施步骤
2010-09-30 23:59 13231).项目启动会 项目启动会上,将同用户企业确定项目的时间 ... -
数据挖掘技术
2010-07-30 17:48 1039数据挖掘技术可分为描 ... -
BI的价值
2010-07-30 17:36 837最早了解到的BI实例,是2000年和惠普(HP)某家经 ... -
ETL设计要点
2010-07-28 10:16 741由于数据源的多样性, ... -
GIS:商业智能的未来之路
2010-02-01 11:20 949本文转自gislike的个人空 ... -
book3.errors.allErrors.each
2009-12-29 11:04 01.def book3 = new Book(name:'G ... -
解决问题的方法
2009-12-25 11:33 0总结一下解决问题的方法: 1.碰到问题,首先自己先思考问题可能 ... -
Business Intelligence(BI) = Data Warehouse(DW) + OLAP + Data Mining(DM)
2009-09-23 12:39 1533Business Intelligence(BI) = Dat ...
相关推荐
ES6--javascript判断一个字符串是否存在另一个字符串中
最近遇到一个问题,就是获取表单中的日期往后台通过json方式传的时候,遇到Date.parse(str)函数在ff下报错: NAN 找了些资料,发现是由于Date.parse()函数对日期格式有要求:详细参考 Date.parse函数 对于js操作日期: ...
JavaScript应用实例-字符串所有排列组合.js
JavaScript应用实例-判断公共字符串.js
NULL 博文链接:https://kingtoon.iteye.com/blog/1618492
JavaScript程序设计
JavaScript应用实例-生成随机字符串待解密.js
字符串的过滤.rar字符串的过滤.rar字符串的过滤.rar字符串的过滤.rar字符串的过滤.rar字符串的过滤.rar
本文实例讲述了javascript实现的字符串与十六进制表示字符串相互转换方法。分享给大家供大家参考。具体如下: 之所以写这个,是因为发现SQL注入和XSS中经常利用十六进制表示的字符串,比如 SELECT CONCAT(0x68656c6...
常用字符串处理函数 求子字符串,字符串分割,编码转换.
字符串的过滤2.rar字符串的过滤2.rar字符串的过滤2.rar字符串的过滤2.rar字符串的过滤2.rar字符串的过滤2.rar
主要介绍了JavaScript判断一个字符串是否包含指定子字符串的方法,实例分析了javascript字符串操作的技巧,非常具有实用价值,需要的朋友可以参考下
JavaScript应用实例-模板字符串.js
javascript脚本获取当月第一天日期和最后一天日期,脚本测试正确无误。
Sqlobj一个JavaScript工具用于通过一个对象构建SQL字符串
JavaScript字符串函数大全 JS自带函数 JavaScript字符串函数大全 JS自带函数
本文实例讲述了JavaScript自定义函数实现查找两个字符串最长公共子串的方法。分享给大家供大家参考,具体如下: //查找两个字符串的最长公共子串 function findSubStr(s1,s2){ var S=sstr= ,L1=s1.length,L2=s2....
1.1 字符串创建 1.2 字符串换行处理 1.3 字符串长度 3.1 字符串拼接 3.2 常用方法列表
本文主要针对Javascript中字符串相关常用的使用方法进行了总结
JS自带函数,concat,indexOf,将整个字符串转成小写字母,通过将字符串划分成子串,将一个字符串做成一个字符串数组。