以毫秒为单位的本地字符串日期?

Psy*_*i3r 5 javascript date

在 javascript 中,我尝试使用 toLocaleString 函数将 Date 对象转换为语言环境字符串。我想要的是用毫秒转换的语言环境字符串。那可能吗?

const time = "2018-12-03T16:24:05.150Z";
const date = new Date(time);
const str = date.toLocaleString();

console.log(date.toLocaleString()); //3-12-2018 17:24:05
Run Code Online (Sandbox Code Playgroud)

Adá*_*bar 8

关键是fractionalSecondDigits

\n
let iso_str = '2022-06-11T01:51:59.618Z';\nlet d = new Date(iso_str);\n\nlet tz = 'America/Santiago'\nlet options = {\n    timeZone:tz ,\n    timeZoneName:'longOffset',\n    year: 'numeric',\n    month: 'numeric',\n    day: 'numeric',\n    hour: 'numeric',\n    minute: 'numeric',\n    second: 'numeric',\n    fractionalSecondDigits: 3\n}\n\n\nstr_locale = d.toLocaleString("sv-SE",options);\n//output: 2022-06-10 21:51:59,618 GMT\xe2\x88\x9204:00\niso_str_tz = str_locale.replace(/(\\d{4})-(\\d{2})-(\\d{2})\\s+(\\d{2}):(\\d{2}):(\\d{2}),(\\d+)\\s+/,'$1-$2-$3T$4:$5:$6.$7').replace('GMT\xe2\x88\x92', '-' ).replace('GMT+','+')\n//output: 2022-06-10T21:51:59.618-04:00\n\n\nconsole.log('iso_str               : ',iso_str);\nconsole.log('str_locale            : ',str_locale);\nconsole.log('iso_str_tz            : ',iso_str_tz);\nconsole.log('iso_str_tz --> date   : ',new Date(iso_str_tz));\nconsole.log('iso_str_tz --> iso_str: ',new Date(iso_str_tz).toISOString());\n
Run Code Online (Sandbox Code Playgroud)\n