首页 > 其他分享 >关于js中的toLocaleDateString()方法

关于js中的toLocaleDateString()方法

时间:2023-08-25 14:58:10浏览次数:39  
标签:toLocaleDateString numeric js 日期 let 关于 date options

toLocaleDateString()方法是JavaScript Date对象的一个内建方法,它将日期转换为符合特定地区习惯的字符串格式。

基本用法:

如果没有传入任何参数,toLocaleDateString()会根据浏览器的默认语言环境返回一个日期字符串。

例如:

let date = new Date();
console.log(date.toLocaleDateString()); // 输出形如 "8/25/2023" 的日期,具体格式会根据你的语言环境设置有所不同

参数:

toLocaleDateString()方法可以接受两个参数:localesoptions

  1. locales参数:一个字符串或字符串数组,表示要使用的语言环境。这个参数使用BCP 47语言标签。例如,英语(美国)的标签为"en-US",而中文(中国)的标签为"zh-CN"。

  2. options参数:一个对象,用于定制日期和时间的格式。这个对象可以包含以下属性:

  • era: 'narrow', 'short', 'long'
  • year: 'numeric', '2-digit'
  • month: 'numeric', '2-digit', 'narrow', 'short', 'long'
  • day: 'numeric', '2-digit'
  • weekday: 'narrow', 'short', 'long'
  • hour: 'numeric', '2-digit'
  • minute: 'numeric', '2-digit'
  • second: 'numeric', '2-digit'
  • timeZoneName: 'short', 'long'

其中,'numeric'表示用数字表示,'2-digit'表示用至少两位数字表示。对于'month'和'weekday',还可以选择'narrow'(最短)、'short'(短)或'long'(长)的文本格式。

例如,如果你想要一个完整的日期字符串(包括星期、月、日和年),你可以这样做:

let date = new Date();
let options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
console.log(date.toLocaleDateString("en-US", options)); // 输出 "Thursday, August 25, 2023"

在这个例子中,我们创建了一个当前日期的Date对象,然后使用toLocaleDateString()将其转换为美国英语的日期字符串,格式为"星期,月份 日,年"。

注意:toLocaleDateString()的输出可能因浏览器和浏览器版本的不同而略有差异,因为不同的浏览器可能对日期和时间的格式有不同的实现。

使用案例

这里有一些使用toLocaleDateString()的例子,展示了如何使用不同的localesoptions参数来改变日期格式:
例子1:使用美国的日期格式

let date = new Date();
let formattedDate = date.toLocaleDateString("en-US"); // "MM/DD/YYYY" 格式
console.log(formattedDate); // 输出 "8/25/2023",假设当前日期是2023年8月25日

例子2:使用英国的日期格式

let date = new Date();
let formattedDate = date.toLocaleDateString("en-GB"); // "DD/MM/YYYY" 格式
console.log(formattedDate); // 输出 "25/08/2023",假设当前日期是2023年8月25日

例子3:使用长格式的日期

let date = new Date();
let options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
let formattedDate = date.toLocaleDateString("en-US", options);
console.log(formattedDate); // 输出 "Friday, August 25, 2023",假设当前日期是2023年8月25日

例子4:使用年和月

let date = new Date();
let options = { year: 'numeric', month: 'long' };
let formattedDate = date.toLocaleDateString("en-US", options);
console.log(formattedDate); // 输出 "August 2023",假设当前日期是2023年8月

例子5:使用日和星期

let date = new Date();
let options = { weekday: 'long', day: 'numeric' };
let formattedDate = date.toLocaleDateString("en-US", options);
console.log(formattedDate); // 输出 "Friday, 25",假设当前日期是8月25日,星期五

例子6:使用指定的ISO 8601格式的日期时间字符串

这个日期是一个ISO 8601格式的日期时间字符串,这是一种国际标准的日期和时间表示方法。下面是这个日期时间字符串的各个部分的含义:

  • 2004-05-03:这是日期部分,表示2004年5月3日。
  • T:这是一个分隔符,用来分隔日期和时间部分。
  • 17:30:08:这是时间部分,表示17时30分08秒(24小时制)。
  • +08:00:这是时区部分,表示这个日期时间是相对于UTC+8时区的。
    所以,这个日期时间字符串表示的是2004年5月3日,UTC+8时区的下午5点30分08秒。
const event = new Date('2004-05-03T17:30:08+08:00');
const options = { year: 'numeric', month: 'long', day: 'numeric', hour:'numeric',minute: 'numeric' }
console.log(event.toLocaleDateString('zh-cn', options)); //输出:2004年5月3日 17:30

以上每个例子都展示了如何使用不同的localesoptions参数来定制toLocaleDateString()的输出。你可以根据需要混合和匹配这些参数来创建你需要的日期格式。

标签:toLocaleDateString,numeric,js,日期,let,关于,date,options
From: https://www.cnblogs.com/bokemoqi/p/17656900.html

相关文章

  • JS 验证URL是否有效
    functionisValidHttpUrl(string){try{constnewUrl=newURL(string);returnnewUrl.protocol==='http:'||newUrl.protocol==='https:';}catch(err){returnfalse;}}console.log(isValidHttpUrl('https://w......
  • 关于周考 Round 11 吐槽 & 自己如何犯智
    T1卡map。map\(\to\)unordered_map,\(10\to100\)。为什么别人认为这是卡longlong?(好像都卡了。:sad:)T3一眼dp然后否决掉了,写了个搜索,并且认为搜索是正解,并且调了很久发现假了,我是Joker。T4看到了\(u_i<v_i\)但是neglected!!1然后我不会倒序dp而是dfs!!!而且可......
  • pdfjs-dist v2.11.338写个react demo
    app.jsximport'./App.css'import*aspdfjsfrom"pdfjs-dist";import"pdfjs-dist/web/pdf_viewer.css";import{useEffect,useRef,useState}from'react'import{PDFViewer,PDFLinkService,EventBus}from'p......
  • mormot2 笔记(三) 实体转JSON
    TOL=class(TObject)publicprocedureW(W:TJsonWriter;Instance:TObject;Options:TTextWriterWriteObjectOptions);end;TPerson=classprivateFName:string;FID:integer;FSex:Byte;publishedpropertyID:integerread......
  • 直播平台搭建,JSON.parseObject的几种用法
    直播平台搭建,JSON.parseObject的几种用法一.result格式: {  "success":"true",  "returnAddress":"123"} JSONObjectjsonObject=JSON.parseObject(result); //转换成objectJsonObject.getString("returnAddress") //获取object中ret......
  • 直播网站程序源码,js判断上传图片格式类型、尺寸大小
    直播网站程序源码,js判断上传图片格式类型、尺寸大小//判断图片类型varf=document.getElementById("File1").value;if(f==""){ alert("请上传图片");returnfalse;}else{if(!/\.(gif|jpg|jpeg|png|GIF|JPG|PNG)$/.test(f)){alert("图片类型必须是.gif,jpeg,jpg,png中的一种")re......
  • js不区分大小写比较字符串|字符串转小写
    toLowerCase()方法用于把字符串转换为小写,在做字符串比较不区分大小写的时候用此方法,效果:代码://不区分大小写Stringstr=‘ABC’if(‘abc’==str.toLowerCase()){return“1”;//正确}else{return“0”;//错误}}toUpperCase():字符串转大写,比较同上......
  • node.js环境变量配置
    node.js环境变量配置环境配置主要配置的是npm安装的全局模块所在的路径,以及缓存cache的路径。为什么需要配置?因为以后在执行类似:npminstallexpress[-g](后面的可选参数-g,g代表global全局安装的意思)的安装语句时,会将安装的模块安装到【C:\Users\用户名\AppData\Roaming\npm】......
  • 使用C#实现PHP语言中的 json_encode
    php语言:md5(json_encode(params).apiKey)params轉json字串,再接APIKey,最後整個字串md5加密C#语言varserializer=newJavaScriptSerializer();stringjson=serializer.Serialize(new{param1="data1",param2="data2"});参考地址:https://www.jb51.cc/cshar......
  • ajax完美解决跨域问题(jsonp、nginx反向代理)
    做过web前端人都知道,经常会有ajax跨域问题,下面列举我经常使用的解决办法第一种:使用jsonp,jquery的ajax方法支持jsonp,但是最大的缺点就是只支持get方式,而且服务端也要修改客户端test.html代码<!DOCTYPEhtml><html><head> <title>工作端</title> <metaname="viewport"content=......