gpt4 book ai didi

rust - 如何使用Rust js_sys获取浏览器的本地时区?

转载 作者:行者123 更新时间:2023-12-03 11:48:52 27 4
gpt4 key购买 nike

我正在使用js_sys crate 在浏览器中运行一些Rust代码。

难以理解如何使用 Intl::DateTimeFormat

我想要的就是获取本地时区,这是通过以下JS代码完成的:

const tz = Intl.DateTimeFormat().resolvedOptions().timeZone;

这似乎在Rust中不起作用:
let tz = Intl::DateTimeFormat().resolved_options().time_zone();

--> src/lib.rs:14:14
|
14 | let tz = Intl::DateTimeFormat().resolved_options().time_zone();
| ^^^^^^^^^^^^^^^^^^^^ did you mean `Intl::DateTimeFormat { /* fields */ }`?

似乎要我创建一个新的 DateTimeFormat结构,但是如果有这样的事情,我只想获取一个“默认”结构...

我怎样才能使它正常工作?

最佳答案

感谢@pauan,并且正如@SOFe在评论中所建议的那样,这是这样做的方法:

let options = Intl::DateTimeFormat::new(&Array::new(), &Object::new())
.resolved_options();

let tz = Reflect::get(&options, &JsValue::from("timeZone"))
.expect("Cannot get timeZone")
.as_string()
.expect("timeZone is not a String");

关于rust - 如何使用Rust js_sys获取浏览器的本地时区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61654015/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com