C#一年中有多少周方法和js一年中第几周
最近在做一个时间插件,用的是jquery-daterangepicker ,现在分享一下查询时间是一年中的第几周的js方法 和 一年中有多少周的C#后台方法,默认是按照周一为一周的开始,如果一年的第一天不是周一,那么相应的天数应该算到上一年中,方法是在网上粘的,不知道最初是谁分享的了
后台方法
/// <summary>
/// 求某年有多少周
/// 返回 int
/// </summary>
/// <param name="strYear"></param>
/// <returns>int</returns>
public static int GetYearWeekCount(int strYear)
{
//string returnStr = "";
System.DateTime fDt = DateTime.Parse(strYear.ToString() + "-01-01");
int k = Convert.ToInt32(fDt.DayOfWeek);//得到该年的第一天是周几
if (k == )
{
int countDay = fDt.AddYears().AddDays(-).DayOfYear;
int countWeek = countDay / + ;
return countWeek;
}
else
{
int countDay = fDt.AddYears().AddDays(-).DayOfYear;
int countWeek = countDay / ;
return countWeek;
}
}
一年中有多少周
js方法
//获取日期是当年的第几周
function getWeekOfYear(date) {
//s声明一个日期未传入的日期
var today = new Date(date);
//获取当年的第一天
var firstDay = new Date(today.getFullYear(), 0, 1);
//console.log("一年的第一天是");
//console.log(firstDay.Format("yyyy-MM-dd"));
//获取第一天是一星期的哪一天,周一是1,周日是0.
var dayOfWeek = firstDay.getDay();
//console.log("是");
//console.log(dayOfWeek);
//声明一个数字1
var spendDay = 1;
if (dayOfWeek == 0) { //一年的第一天为周日
// spendDay = 0;
firstDay = new Date(today.getFullYear(), 0, 2);
//console.log("一年的第一天是周日");
//console.log("设置2号为一周开始");
//console.log(firstDay);
}
else if (dayOfWeek == 1) {
//console.log("一年的第一天是周一");
//console.log("设置1号为一周开始");
firstDay = new Date(today.getFullYear(), 0, 1);
// console.log(firstDay)
}
else {
//console.log("其他情况");
spendDay = 7 - dayOfWeek;
firstDay = new Date(today.getFullYear(), 0, 2 + spendDay);
// console.log(firstDay);
}
var d = Math.ceil((today.valueOf() - firstDay.valueOf()) / 86400000);
var result = Math.ceil(d / 7);
var week = (result + 1).toString(); //周
var year = today.getFullYear();
var weekfinal = week.length < 2 ? '0' + week : week;
return year + "第" + weekfinal + "周";
};
选择的日期是一年中的第几周
最后写一个js格式化时间的方法,也是烂大街了
Date.prototype.Format = function (fmt) { //author: meizz
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
}
js时间格式化
C#一年中有多少周方法和js一年中第几周的更多相关文章
- react-router5.x 的配置及其页面跳转方法和js跳转方法
https://blog.csdn.net/sinat_37255207/article/details/90745207 上次用react-router 的时候 还是3.x 很久不用 已经到rea ...
- 原生js中slice()方法和splice()区别
slice()方法和splice()方法都是原生js中对数组操作的方法. slice(),返回一个新的数组,该方法可从已有的数组中返回选定的元素.例如:arrObject(start,end),sta ...
- js进阶 14-4 $.get()方法和$.post()方法如何使用
js进阶 14-4 $.get()方法和$.post()方法如何使用 一.总结 一句话总结:$.get(URL,callback); $.post(URL,data,callback); callba ...
- js进阶 12-13 jquery中one方法和trigger方法如何使用
js进阶 12-13 jquery中one方法和trigger方法如何使用 一.总结 一句话总结: 1.one()方法和on()方法的区别是什么? 除了one()只执行一次,其它和on()一模一样,包 ...
- js中的splice方法和slice方法简单总结
slice:是截取用的 splice:是做删除 插入 替换用的 slice(start,end): 参数: start:开始位置的索引 end:结束位置的索引(但不包含该索引位置的元素) 例如: va ...
- 【js】数组的splice方法和slice方法的区别
1.splice方法和slice都是数组的方法 2.splice方法有3种作用 例如,arr=[1,2,3,4,5,6]; splice方法 删除 arr.splice(1, 1); 返回值为删除的 ...
- JS中的call()方法和apply()方法用法总结
原文引自:https://blog.csdn.net/ganyingxie123456/article/details/70855586 最近又遇到了JacvaScript中的call()方法和app ...
- 关于JS中的call()方法和apply() 暂时只接触到call() 等接触到apply()再回头来看
1. 每个函数都包含两个非继承而来的方法:call()方法和apply()方法. 2. 相同点:这两个方法的作用是一样的. 都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖 ...
- JS中的call()方法和apply()方法用法总结(挺好 转载下)
最近又遇到了JacvaScript中的call()方法和apply()方法,而在某些时候这两个方法还确实是十分重要的,那么就让我总结这两个方法的使用和区别吧. 1. 每个函数都包含两个非继承而来的方法 ...
随机推荐
- Gravitational Teleport docker-compose简单运行
Gravitational Teleport 可以作为堡垒机进行使用,为了测试方便使用docker-compose 运行一个all in one 的demo 备注: 官方提供的docker-compo ...
- 23 模块 os sys pickle json
一. os模块 主要是针对操作系统的 用于文件操作 二. sys 模块 模块的查找路径 sys.path 三 pickle 模块 1. pickle.dumps(对象) 序列化 ...
- jdk动态代理在idea的debug模式下不断刷新tostring方法
在jdk的动态代理下,在使用idea进入动态代理的debug模式下,单步调试会刷新idea的tostring方法,让他自己重走了一遍代理 这个问题暂时无解
- python一些东西
assert repr() >>> a ['d', 'c', 'c', 'f', 'a', 'a', 'b', 'c', 'd'] >>> sorted(a) [' ...
- C# MD5位加密
/// <summary> /// 方法一:通过使用 new 运算符创建对象 /// </summary> /// <param name="strSource ...
- java面试题001
1.指针和函数的关系 这里主要谈指针函数和函数指针,在c中指针函数是返回值为指针的函数:函数指针是指向函数的指针变量. 2.什么是事务? 为了完成对数据的操作,要求并发访问在多个构件之间共享的数据.这 ...
- 使用Tesseract-OCR 进行文字识别
关于中文的识别,效果比较好而且开源的应该就是Tesseract-OCR了,所以自己亲身试用一下,分享到博客让有同样兴趣的人少走弯路. 文中所用到的身份证图片资源是百度找的,如有侵权可联系我删除. 一. ...
- IIS APK MIME
点击新建-填写扩展名和MIME类型 .apk application/vnd.android.package-archive
- Azure PowerShell (15) 批量导出Azure ASM/ARM VM信息
<Windows Azure Platform 系列文章目录> 客户又提出新的需求,需要知道所有订阅下的虚拟机数量.运行情况等信息. 我花了点时间,写了一个PowerShell脚本,发布到 ...
- sql Find_IN_SET 用法
字段以 1,2,3,4 格式存储的SELECT * from test where FIND_IN_SET('15',btype) GROUP_CONCAT + group_by