在使用javascript内置的Intl.DateTimeFormat格式化日期时,如果您提供格式{weekday : 'short', day 'numeric'}
,它将重新排列两者,并始终给出day,然后是工作日。
供参考:
console.log(new Intl.DateTimeFormat('en-US', {
weekday: 'short',
day: 'numeric'
}).format(new Date));
我希望有Fri 3
,但我会收到3 Fri
我使用不正确吗?还是这是个错误?
我尝试的直接解决方法是仅在工作日格式化,然后在一天格式化,然后附加两个可行的格式,但这对我的项目而言并不理想。
答案 0 :(得分:0)
en-US
总是一天/一个工作日,=>使用en-GB
let
date3may = new Date('May 3, 2019 15:24:00'),
Options = {weekday:'short', day:'numeric'};
console.log(new Intl.DateTimeFormat('en-GB', Options).format(date3may));
答案 1 :(得分:0)
输出的顺序由语言环境定义。
如果要避免串联,可以使用其他英语语言环境,例如en-AU
:
var date = new Date();
console.log(new Intl.DateTimeFormat('en-AU', {
weekday: 'short',
day: 'numeric'
}).format(date));
答案 2 :(得分:0)
根据MDN,要获得具有一致结果的所需结果的正确方法是使用sbutton = expected_conditions.presence_of_element_located((By.CSS_SELECTOR, 'div.btn.btn-success'))
WebDriverWait(driver, timeout_limit).until(sbutton)
方法,然后手动操作给定的数组。
我的第一种方法如下:
Intl.DateTimeFormat.prototype.formatToParts()