gpt4 book ai didi

javascript - 在 Google 电子表格上花费时间

转载 作者:行者123 更新时间:2023-12-02 14:09:48 24 4
gpt4 key购买 nike

所以我正在编写一个脚本,需要从 Google 电子表格中读取时间值并使用它。我尝试运行测试函数以确保提取的值正确,但这些值似乎与电子表格中反射(reflect)的值不同。

输入

function testTime(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("TimeSheet");
var time = sheet.getRange(2,1).getValue();
//value on the sheet is 10:00:00 AM
Logger.log(time);
Logger.log(time.toTimeString());
}

输出

Sat Dec 30 09:30:59 GMT+07:36 1899
09:54:17 GMT+0800 (HKT)

时间应该是 10:00:00 但显示为 09:54:17,这是第一个奇怪的错误。

其次,我是否可以提取实际值“10:00:00 AM”,或者以更简单的格式“10:00”提取更好的值?

编辑:

我找到了解决第二个问题并以所需格式获取时间的方法。然而,与时间还是有一些奇怪的互动。我添加了 2 行及其各自的输出

所有记录器行

  Logger.log(Utilities.formatDate(time, "GMT+07:37", "HH:mm"));
Logger.log(Utilities.formatDate(time, "GMT+08:00", "HH:mm"));
Logger.log(time);
Logger.log(time.toTimeString());

输出

10:00
10:23
Sat Dec 30 10:00:00 GMT+07:36 1899
10:23:18 GMT+0800 (HKT)

在电子表格设置下,

区域设置 = 美国

时区 = (GMT+08:00) 香港

最佳答案

  1. 如果您想要与电子表格中显示的值完全相同细胞,使用 var time = sheet.getRange(2,1).getDisplayValue();

  2. 此外,您可以使用以下方法分解长日期/时间字符串 split(" ")方法,然后以您想要的任何方式组合结果数组中的元素。

关于javascript - 在 Google 电子表格上花费时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39718668/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com