如何在 JavaScript 中将日期对象的內容转换为 JSON?


指定日期对象的內容使用 date.toJSON() 函数转换为字符串。应用 date() 构造函数,生成日期对象。日期描述时间中的特定时刻。Date 对象的值由 toJSON() 函数(使用 toISOString())返回的字符串描述。通常,此函数被编程为在 JSON 序列化期间自动有意义地序列化 Date 对象。

DateObj 是由 Date() 构造函数生成的有效 Date 对象,其数据已转换为字符串。以下是一些示例中提到的过程的其他代码:

语法

以下是将日期对象转换为 JSON 的语法

dateObj.toJSON()

参数 - 此方法不接受任何参数。它仅与使用 Date() 构造函数形成的 Date 对象一起使用

返回值

显示指定日期的字符串。

示例 1

在此示例中,让我们了解Date toJSON() 方法的基本示例。

<!DOCTYPE html> <html> <title>How to convert a date object's content into json in JavaScript - TutorialsPoint</title> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <div id="result"></div> <script> let customDate = new Date('December 31, 2002 05:35:32'); let stringJson = customDate.toJSON(); document.getElementById("result").innerHTML =stringJson; </script> </body>

示例 2

即使在生成日期对象时未提供任何参数,toJSON() 方法仍然返回当前日期名称、月份名称、日期、年份和时间。

<!DOCTYPE html> <html> <title>How to convert a date object's content into json in JavaScript - TutorialsPoint</title> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <div id="result"></div> <script> let customDate = new Date(); let stringJson = customDate.toJSON(); document.getElementById("result").innerHTML =stringJson ; </script> </body> </html>

示例 3

当提供看似随机的值列表时,toJSON() 方法会返回相应的生成字符串。Date() 构造函数的格式类似于 Date(月, 日, 年, 时)。通过使用此格式,一些值被发送到下面的软件,并且相应的字符串被生成作为输出。以下时间格式是合适的(数字:数字:数字)。

<!DOCTYPE html> <html> <title>How to convert a date object's content into json in JavaScript - TutorialsPoint</title> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <script> let dateObject1 = new Date('1'); let dateObject2 = new Date('2, 3,4'); let dateObject3 = new Date('2, 3, 4, 11:00:12'); let dateObject4 = new Date('12, 5, 4, 0:0');let str1 = dateObject1.toJSON();
let str2 = dateObject2.toJSON(); let str3 = dateObject3.toJSON(); let str4 = dateObject4.toJSON();
document.write(str1 + "<br>"); document.write(str2 + "<br>"); document.write(str3 + "<br>"); document.write(str4); </script> </body> </html>

示例 4

月份、日期、小时、分钟、秒和毫秒必须在月份的 0 到 11、日期的 1 到 31、小时的 0 到 23、分钟的 0 到 59、秒的 0 到 59 和毫秒的 0 到 999 之内,以便 toJSON() 方法将返回 null。

此处日期给出为 42,超出日期范围,因此以下代码的输出为 null。

<!DOCTYPE html> <html> <title>How to convert a date object's content into json in JavaScript - TutorialsPoint</title> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <script> let customDateObj = new Date('October 42, 1996 05:35:32'); let strJson = customDateObj.toJSON(); document.write(strJson); </script> </body> </html>

示例 5

在此示例中,让我们了解如何将当前日期作为字符串检索。

<!DOCTYPE html> <html> <title>How to convert a date object's content into json in JavaScript - TutorialsPoint</title> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <script> let date=new Date(); let strJson=date.toJSON(); document.writeln(new Date(strJson).toUTCString()); </script> </body> </html>

示例 6

我们可以看到我们只需要日期的前 10 个字符,所以让我们使用 JavaScript 的 slice() 技术。在我们的示例中,方法 slice(a, b) 在点 a 和 b 之间将字符串从 0 切片到 10。让我们试一试:

此字符串可以进一步分割,以便可以将位分配给变量 day、month 和 year,但这样做将是过度的。如果您需要不同的格式,只需选择不同的路径即可。

<!DOCTYPE html> <html> <title>How to convert a date object's content into json in JavaScript - TutorialsPoint</title> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <script> let date = new Date().toJSON().slice(0, 10); document.write(date); </script> </body> </html>

更新于: 2022年8月4日

1K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告