首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在google-apps-script中获取周数

如何在google-apps-script中获取周数
EN

Stack Overflow用户
提问于 2015-09-07 14:22:23
回答 3查看 14.3K关注 0票数 8

如何在google-apps-script中获取周数?

例如,本周是Week37,如何从谷歌应用程序脚本中获取37?

非常感谢你..

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-09-07 15:11:11

将此代码添加到您的Apps脚本的顶部:

代码语言:javascript
复制
Date.prototype.getWeek = function() {
    var onejan = new Date(this.getFullYear(),0,1);
    return Math.ceil((((this - onejan) / 86400000) + onejan.getDay()+1)/7);
} 

然后,您可以使用getWeek方法,例如获取this week:

代码语言:javascript
复制
var now = new Date();
Logger.log(now.getWeek());

来源:http://javascript.about.com/library/blweekyear.htm

票数 6
EN

Stack Overflow用户

发布于 2017-11-21 00:19:03

也许2015年还没有这样的功能,但现在只有你可以:

代码语言:javascript
复制
var data = Utilities.formatDate(new Date(), "GMT", "'Week'w"); 
// data = 'Week48' for example

回答,因为此页面在搜索结果中排名靠前。

票数 13
EN

Stack Overflow用户

发布于 2021-05-17 21:20:44

默认情况下,Google Sheets从周日开始统计周数字。如果你想从周一开始计数,你可以这样做:

代码语言:javascript
复制
function getWeek(date) {
  return Number(Utilities.formatDate(new Date(date), "Europe/Kiev", "u")) === 7 ? 
    Number(Utilities.formatDate(new Date(date), "Europe/Kiev", "w")) - 1 : Number(Utilities.formatDate(new Date(date), "Europe/Kiev", "w"));
}

因此,代码将分析星期几是否等于7(星期日),否则返回(currentWeek - 1),否则返回currentWeek。

并且您必须指定您所在国家/地区时区的timeZone参数。这是Utilities.formatDate中的第二个参数,在我的例子中是“欧洲/基辅”,但您可以在此处找到所需的区域:https://developers.google.com/adwords/api/docs/appendix/codes-formats#timezone-ids

如果你需要更多关于你可以在Utilities.formatDate中抛出什么参数的信息,你可以在这里找到:https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32432269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档