簡體   English   中英

如何為 Google 表格格式化 JavaScript 時間戳?

[英]How to format JavaScript timestamp for Google Sheets?

如何使用 JavaScript 將時間戳(自紀元以來的毫秒數)轉換為 Google 表格時間線圖表可用的日期和時間格式。

我的第一次嘗試是 map 使用timestamps.map(timestamp => new Date(timestamp).toLocaleString())的時間戳,但 Google 表格不接受這是有效的日期和時間格式:

在此處輸入圖像描述

我相信你目前的情況和目標如下。

  • 您可以通過手動復制和粘貼[{timestamp: 1617413162282, value: 1}, {timestamp: 1617413239904, value: 2}].map(el => `${new Date(el.timestamp).toLocaleString()}\t${el.value}`).join("\n") timestampvalue的值分別放在“A”和“B”列。
  • 您想使用復制的timestamp值作為日期 object。

在您的情況下, timestamp的值被放置為字符串。 我認為這可能是您的問題的原因。 在這種情況下,為了將timestamp的值作為日期 object,我想建議使用 Google Apps 腳本來放置這些值。 使用 Google Apps Script 時, timestamp的值可以設置為日期 object。 示例腳本如下。

示例腳本:

請將以下腳本復制並粘貼到您要使用的 Google 電子表格的腳本編輯器中。 並且,請設置arsheetName的變量,並使用腳本編輯器運行myFunction的 function。 這樣,這些值就會被放入sheetName的工作表中。 在這種情況下, timestamp的值被放置為日期 object。

function myFunction() {
  const ar = [{timestamp: 1617413162282, value: 1}, {timestamp: 1617413239904, value: 2}]; // Please set the values you want to put.
  const sheetName = "Sheet1"; // Please set the sheet name of the sheet you want to put the values.

  const values = ar.map(({timestamp, value}) => [new Date(timestamp), value]);
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  sheet.getRange(1, 1, values.length, values[0].length).setValues(values);
}

筆記:

  • 我認為你的價值觀也可以用其他語言來表達。 但我認為在這種情況下,當使用 Google Apps Script 時,過程可能會更簡單。

參考:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM