如何使用格林尼治标准时间获取日期? Java脚本

时间:2020-09-22 15:08:41

标签: javascript node.js timezone momentjs

我有一个问题,我必须使用Moment时区,但没有字符串时区。我需要在这里选择日期:https://support.microsoft.com/en-us/help/973627/microsoft-time-zone-index-values 因此,例如,我需要一个lib或可以将实际日期转换为“(GMT-09:00)阿拉斯加”的东西

我知道它可以将日期转换为特定的字符串时区,例如: moment.tz("China/Beijing"),但我需要类似moment.xx("(GMT-09:00) Alaska")

1 个答案:

答案 0 :(得分:1)

我将从创建一个下拉列表以在显示Windows显示名称的同时选择IANA时区标识符的角度回答这个问题。

注意事项:

  • 以下列表于2020-09-22生成。修改或添加时区可能会过时。
  • 该列表包含美国英语(en-US)语言环境的最新Windows时区显示名称。
  • 该列表表示从Windows显示名称到Windows时区ID到最合适的IANA规范时区名称的单向反向映射。您可以将其用于时区选择器,但不能将其用于任意 IANA时区名称。
  • 该列表是使用.NET TimeZoneNames库以及以下简单的C#程序构建的:
var names = TZNames.GetDisplayNames("en-US", useIanaZoneIds: true);
Console.WriteLine("<select>");
foreach ((string id, string displayName) in names)
{
    Console.WriteLine($"  <option value=\"{id}\">{displayName}</option>");
}
Console.WriteLine("</select>");

以下是列表,作为HTML下拉列表:

<select>
  <option value="Etc/GMT+12">(UTC-12:00) International Date Line West</option>
  <option value="Etc/GMT+11">(UTC-11:00) Coordinated Universal Time-11</option>
  <option value="America/Adak">(UTC-10:00) Aleutian Islands</option>
  <option value="Pacific/Honolulu">(UTC-10:00) Hawaii</option>
  <option value="Pacific/Marquesas">(UTC-09:30) Marquesas Islands</option>
  <option value="America/Anchorage">(UTC-09:00) Alaska</option>
  <option value="Etc/GMT+9">(UTC-09:00) Coordinated Universal Time-09</option>
  <option value="America/Whitehorse">(UTC-07:00) Yukon</option>
  <option value="America/Tijuana">(UTC-08:00) Baja California</option>
  <option value="Etc/GMT+8">(UTC-08:00) Coordinated Universal Time-08</option>
  <option value="America/Los_Angeles">(UTC-08:00) Pacific Time (US & Canada)</option>
  <option value="America/Phoenix">(UTC-07:00) Arizona</option>
  <option value="America/Chihuahua">(UTC-07:00) Chihuahua, La Paz, Mazatlan</option>
  <option value="America/Denver">(UTC-07:00) Mountain Time (US & Canada)</option>
  <option value="America/Guatemala">(UTC-06:00) Central America</option>
  <option value="America/Chicago">(UTC-06:00) Central Time (US & Canada)</option>
  <option value="Pacific/Easter">(UTC-06:00) Easter Island</option>
  <option value="America/Mexico_City">(UTC-06:00) Guadalajara, Mexico City, Monterrey</option>
  <option value="America/Regina">(UTC-06:00) Saskatchewan</option>
  <option value="America/Bogota">(UTC-05:00) Bogota, Lima, Quito, Rio Branco</option>
  <option value="America/Cancun">(UTC-05:00) Chetumal</option>
  <option value="America/New_York">(UTC-05:00) Eastern Time (US & Canada)</option>
  <option value="America/Port-au-Prince">(UTC-05:00) Haiti</option>
  <option value="America/Havana">(UTC-05:00) Havana</option>
  <option value="America/Indiana/Indianapolis">(UTC-05:00) Indiana (East)</option>
  <option value="America/Grand_Turk">(UTC-05:00) Turks and Caicos</option>
  <option value="America/Asuncion">(UTC-04:00) Asuncion</option>
  <option value="America/Halifax">(UTC-04:00) Atlantic Time (Canada)</option>
  <option value="America/Caracas">(UTC-04:00) Caracas</option>
  <option value="America/Cuiaba">(UTC-04:00) Cuiaba</option>
  <option value="America/La_Paz">(UTC-04:00) Georgetown, La Paz, Manaus, San Juan</option>
  <option value="America/Santiago">(UTC-04:00) Santiago</option>
  <option value="America/St_Johns">(UTC-03:30) Newfoundland</option>
  <option value="America/Araguaina">(UTC-03:00) Araguaina</option>
  <option value="America/Sao_Paulo">(UTC-03:00) Brasilia</option>
  <option value="America/Cayenne">(UTC-03:00) Cayenne, Fortaleza</option>
  <option value="America/Argentina/Buenos_Aires">(UTC-03:00) City of Buenos Aires</option>
  <option value="America/Nuuk">(UTC-03:00) Greenland</option>
  <option value="America/Montevideo">(UTC-03:00) Montevideo</option>
  <option value="America/Punta_Arenas">(UTC-03:00) Punta Arenas</option>
  <option value="America/Miquelon">(UTC-03:00) Saint Pierre and Miquelon</option>
  <option value="America/Bahia">(UTC-03:00) Salvador</option>
  <option value="Etc/GMT+2">(UTC-02:00) Coordinated Universal Time-02</option>
  <option value="Atlantic/Azores">(UTC-01:00) Azores</option>
  <option value="Atlantic/Cape_Verde">(UTC-01:00) Cabo Verde Is.</option>
  <option value="Etc/UTC">(UTC) Coordinated Universal Time</option>
  <option value="Europe/London">(UTC+00:00) Dublin, Edinburgh, Lisbon, London</option>
  <option value="Atlantic/Reykjavik">(UTC+00:00) Monrovia, Reykjavik</option>
  <option value="Africa/Sao_Tome">(UTC+00:00) Sao Tome</option>
  <option value="Africa/Casablanca">(UTC+01:00) Casablanca</option>
  <option value="Europe/Berlin">(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna</option>
  <option value="Europe/Budapest">(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague</option>
  <option value="Europe/Paris">(UTC+01:00) Brussels, Copenhagen, Madrid, Paris</option>
  <option value="Europe/Warsaw">(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb</option>
  <option value="Africa/Lagos">(UTC+01:00) West Central Africa</option>
  <option value="Asia/Amman">(UTC+02:00) Amman</option>
  <option value="Europe/Bucharest">(UTC+02:00) Athens, Bucharest</option>
  <option value="Asia/Beirut">(UTC+02:00) Beirut</option>
  <option value="Africa/Cairo">(UTC+02:00) Cairo</option>
  <option value="Europe/Chisinau">(UTC+02:00) Chisinau</option>
  <option value="Asia/Damascus">(UTC+02:00) Damascus</option>
  <option value="Asia/Hebron">(UTC+02:00) Gaza, Hebron</option>
  <option value="Africa/Johannesburg">(UTC+02:00) Harare, Pretoria</option>
  <option value="Europe/Kiev">(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius</option>
  <option value="Asia/Jerusalem">(UTC+02:00) Jerusalem</option>
  <option value="Europe/Kaliningrad">(UTC+02:00) Kaliningrad</option>
  <option value="Africa/Khartoum">(UTC+02:00) Khartoum</option>
  <option value="Africa/Tripoli">(UTC+02:00) Tripoli</option>
  <option value="Africa/Windhoek">(UTC+02:00) Windhoek</option>
  <option value="Asia/Baghdad">(UTC+03:00) Baghdad</option>
  <option value="Europe/Istanbul">(UTC+03:00) Istanbul</option>
  <option value="Asia/Riyadh">(UTC+03:00) Kuwait, Riyadh</option>
  <option value="Europe/Minsk">(UTC+03:00) Minsk</option>
  <option value="Europe/Moscow">(UTC+03:00) Moscow, St. Petersburg</option>
  <option value="Africa/Nairobi">(UTC+03:00) Nairobi</option>
  <option value="Asia/Tehran">(UTC+03:30) Tehran</option>
  <option value="Asia/Dubai">(UTC+04:00) Abu Dhabi, Muscat</option>
  <option value="Europe/Astrakhan">(UTC+04:00) Astrakhan, Ulyanovsk</option>
  <option value="Asia/Baku">(UTC+04:00) Baku</option>
  <option value="Europe/Samara">(UTC+04:00) Izhevsk, Samara</option>
  <option value="Indian/Mauritius">(UTC+04:00) Port Louis</option>
  <option value="Europe/Saratov">(UTC+04:00) Saratov</option>
  <option value="Asia/Tbilisi">(UTC+04:00) Tbilisi</option>
  <option value="Europe/Volgograd">(UTC+04:00) Volgograd</option>
  <option value="Asia/Yerevan">(UTC+04:00) Yerevan</option>
  <option value="Asia/Kabul">(UTC+04:30) Kabul</option>
  <option value="Asia/Tashkent">(UTC+05:00) Ashgabat, Tashkent</option>
  <option value="Asia/Yekaterinburg">(UTC+05:00) Ekaterinburg</option>
  <option value="Asia/Karachi">(UTC+05:00) Islamabad, Karachi</option>
  <option value="Asia/Qyzylorda">(UTC+05:00) Qyzylorda</option>
  <option value="Asia/Kolkata">(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi</option>
  <option value="Asia/Colombo">(UTC+05:30) Sri Jayawardenepura</option>
  <option value="Asia/Kathmandu">(UTC+05:45) Kathmandu</option>
  <option value="Asia/Almaty">(UTC+06:00) Astana</option>
  <option value="Asia/Dhaka">(UTC+06:00) Dhaka</option>
  <option value="Asia/Omsk">(UTC+06:00) Omsk</option>
  <option value="Asia/Yangon">(UTC+06:30) Yangon (Rangoon)</option>
  <option value="Asia/Bangkok">(UTC+07:00) Bangkok, Hanoi, Jakarta</option>
  <option value="Asia/Barnaul">(UTC+07:00) Barnaul, Gorno-Altaysk</option>
  <option value="Asia/Hovd">(UTC+07:00) Hovd</option>
  <option value="Asia/Krasnoyarsk">(UTC+07:00) Krasnoyarsk</option>
  <option value="Asia/Novosibirsk">(UTC+07:00) Novosibirsk</option>
  <option value="Asia/Tomsk">(UTC+07:00) Tomsk</option>
  <option value="Asia/Shanghai">(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi</option>
  <option value="Asia/Irkutsk">(UTC+08:00) Irkutsk</option>
  <option value="Asia/Singapore">(UTC+08:00) Kuala Lumpur, Singapore</option>
  <option value="Australia/Perth">(UTC+08:00) Perth</option>
  <option value="Asia/Taipei">(UTC+08:00) Taipei</option>
  <option value="Asia/Ulaanbaatar">(UTC+08:00) Ulaanbaatar</option>
  <option value="Australia/Eucla">(UTC+08:45) Eucla</option>
  <option value="Asia/Chita">(UTC+09:00) Chita</option>
  <option value="Asia/Tokyo">(UTC+09:00) Osaka, Sapporo, Tokyo</option>
  <option value="Asia/Pyongyang">(UTC+09:00) Pyongyang</option>
  <option value="Asia/Seoul">(UTC+09:00) Seoul</option>
  <option value="Asia/Yakutsk">(UTC+09:00) Yakutsk</option>
  <option value="Australia/Adelaide">(UTC+09:30) Adelaide</option>
  <option value="Australia/Darwin">(UTC+09:30) Darwin</option>
  <option value="Australia/Brisbane">(UTC+10:00) Brisbane</option>
  <option value="Australia/Sydney">(UTC+10:00) Canberra, Melbourne, Sydney</option>
  <option value="Pacific/Port_Moresby">(UTC+10:00) Guam, Port Moresby</option>
  <option value="Australia/Hobart">(UTC+10:00) Hobart</option>
  <option value="Asia/Vladivostok">(UTC+10:00) Vladivostok</option>
  <option value="Australia/Lord_Howe">(UTC+10:30) Lord Howe Island</option>
  <option value="Pacific/Bougainville">(UTC+11:00) Bougainville Island</option>
  <option value="Asia/Srednekolymsk">(UTC+11:00) Chokurdakh</option>
  <option value="Asia/Magadan">(UTC+11:00) Magadan</option>
  <option value="Pacific/Norfolk">(UTC+11:00) Norfolk Island</option>
  <option value="Asia/Sakhalin">(UTC+11:00) Sakhalin</option>
  <option value="Pacific/Guadalcanal">(UTC+11:00) Solomon Is., New Caledonia</option>
  <option value="Asia/Kamchatka">(UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky</option>
  <option value="Pacific/Auckland">(UTC+12:00) Auckland, Wellington</option>
  <option value="Etc/GMT-12">(UTC+12:00) Coordinated Universal Time+12</option>
  <option value="Pacific/Fiji">(UTC+12:00) Fiji</option>
  <option value="Pacific/Chatham">(UTC+12:45) Chatham Islands</option>
  <option value="Etc/GMT-13">(UTC+13:00) Coordinated Universal Time+13</option>
  <option value="Pacific/Tongatapu">(UTC+13:00) Nuku'alofa</option>
  <option value="Pacific/Apia">(UTC+13:00) Samoa</option>
  <option value="Pacific/Kiritimati">(UTC+14:00) Kiritimati Island</option>
</select>

这里是该程序的修改版本,它会生成JSON:

var names = TZNames.GetDisplayNames("en-US", useIanaZoneIds: true);
var json = JsonConvert.SerializeObject(names, formatting: Formatting.Indented);
Console.Write(json);
{
  "Etc/GMT+12": "(UTC-12:00) International Date Line West",
  "Etc/GMT+11": "(UTC-11:00) Coordinated Universal Time-11",
  "America/Adak": "(UTC-10:00) Aleutian Islands",
  "Pacific/Honolulu": "(UTC-10:00) Hawaii",
  "Pacific/Marquesas": "(UTC-09:30) Marquesas Islands",
  "America/Anchorage": "(UTC-09:00) Alaska",
  "Etc/GMT+9": "(UTC-09:00) Coordinated Universal Time-09",
  "America/Whitehorse": "(UTC-07:00) Yukon",
  "America/Tijuana": "(UTC-08:00) Baja California",
  "Etc/GMT+8": "(UTC-08:00) Coordinated Universal Time-08",
  "America/Los_Angeles": "(UTC-08:00) Pacific Time (US & Canada)",
  "America/Phoenix": "(UTC-07:00) Arizona",
  "America/Chihuahua": "(UTC-07:00) Chihuahua, La Paz, Mazatlan",
  "America/Denver": "(UTC-07:00) Mountain Time (US & Canada)",
  "America/Guatemala": "(UTC-06:00) Central America",
  "America/Chicago": "(UTC-06:00) Central Time (US & Canada)",
  "Pacific/Easter": "(UTC-06:00) Easter Island",
  "America/Mexico_City": "(UTC-06:00) Guadalajara, Mexico City, Monterrey",
  "America/Regina": "(UTC-06:00) Saskatchewan",
  "America/Bogota": "(UTC-05:00) Bogota, Lima, Quito, Rio Branco",
  "America/Cancun": "(UTC-05:00) Chetumal",
  "America/New_York": "(UTC-05:00) Eastern Time (US & Canada)",
  "America/Port-au-Prince": "(UTC-05:00) Haiti",
  "America/Havana": "(UTC-05:00) Havana",
  "America/Indiana/Indianapolis": "(UTC-05:00) Indiana (East)",
  "America/Grand_Turk": "(UTC-05:00) Turks and Caicos",
  "America/Asuncion": "(UTC-04:00) Asuncion",
  "America/Halifax": "(UTC-04:00) Atlantic Time (Canada)",
  "America/Caracas": "(UTC-04:00) Caracas",
  "America/Cuiaba": "(UTC-04:00) Cuiaba",
  "America/La_Paz": "(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",
  "America/Santiago": "(UTC-04:00) Santiago",
  "America/St_Johns": "(UTC-03:30) Newfoundland",
  "America/Araguaina": "(UTC-03:00) Araguaina",
  "America/Sao_Paulo": "(UTC-03:00) Brasilia",
  "America/Cayenne": "(UTC-03:00) Cayenne, Fortaleza",
  "America/Argentina/Buenos_Aires": "(UTC-03:00) City of Buenos Aires",
  "America/Nuuk": "(UTC-03:00) Greenland",
  "America/Montevideo": "(UTC-03:00) Montevideo",
  "America/Punta_Arenas": "(UTC-03:00) Punta Arenas",
  "America/Miquelon": "(UTC-03:00) Saint Pierre and Miquelon",
  "America/Bahia": "(UTC-03:00) Salvador",
  "Etc/GMT+2": "(UTC-02:00) Coordinated Universal Time-02",
  "Atlantic/Azores": "(UTC-01:00) Azores",
  "Atlantic/Cape_Verde": "(UTC-01:00) Cabo Verde Is.",
  "Etc/UTC": "(UTC) Coordinated Universal Time",
  "Europe/London": "(UTC+00:00) Dublin, Edinburgh, Lisbon, London",
  "Atlantic/Reykjavik": "(UTC+00:00) Monrovia, Reykjavik",
  "Africa/Sao_Tome": "(UTC+00:00) Sao Tome",
  "Africa/Casablanca": "(UTC+01:00) Casablanca",
  "Europe/Berlin": "(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",
  "Europe/Budapest": "(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",
  "Europe/Paris": "(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",
  "Europe/Warsaw": "(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",
  "Africa/Lagos": "(UTC+01:00) West Central Africa",
  "Asia/Amman": "(UTC+02:00) Amman",
  "Europe/Bucharest": "(UTC+02:00) Athens, Bucharest",
  "Asia/Beirut": "(UTC+02:00) Beirut",
  "Africa/Cairo": "(UTC+02:00) Cairo",
  "Europe/Chisinau": "(UTC+02:00) Chisinau",
  "Asia/Damascus": "(UTC+02:00) Damascus",
  "Asia/Hebron": "(UTC+02:00) Gaza, Hebron",
  "Africa/Johannesburg": "(UTC+02:00) Harare, Pretoria",
  "Europe/Kiev": "(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",
  "Asia/Jerusalem": "(UTC+02:00) Jerusalem",
  "Europe/Kaliningrad": "(UTC+02:00) Kaliningrad",
  "Africa/Khartoum": "(UTC+02:00) Khartoum",
  "Africa/Tripoli": "(UTC+02:00) Tripoli",
  "Africa/Windhoek": "(UTC+02:00) Windhoek",
  "Asia/Baghdad": "(UTC+03:00) Baghdad",
  "Europe/Istanbul": "(UTC+03:00) Istanbul",
  "Asia/Riyadh": "(UTC+03:00) Kuwait, Riyadh",
  "Europe/Minsk": "(UTC+03:00) Minsk",
  "Europe/Moscow": "(UTC+03:00) Moscow, St. Petersburg",
  "Africa/Nairobi": "(UTC+03:00) Nairobi",
  "Asia/Tehran": "(UTC+03:30) Tehran",
  "Asia/Dubai": "(UTC+04:00) Abu Dhabi, Muscat",
  "Europe/Astrakhan": "(UTC+04:00) Astrakhan, Ulyanovsk",
  "Asia/Baku": "(UTC+04:00) Baku",
  "Europe/Samara": "(UTC+04:00) Izhevsk, Samara",
  "Indian/Mauritius": "(UTC+04:00) Port Louis",
  "Europe/Saratov": "(UTC+04:00) Saratov",
  "Asia/Tbilisi": "(UTC+04:00) Tbilisi",
  "Europe/Volgograd": "(UTC+04:00) Volgograd",
  "Asia/Yerevan": "(UTC+04:00) Yerevan",
  "Asia/Kabul": "(UTC+04:30) Kabul",
  "Asia/Tashkent": "(UTC+05:00) Ashgabat, Tashkent",
  "Asia/Yekaterinburg": "(UTC+05:00) Ekaterinburg",
  "Asia/Karachi": "(UTC+05:00) Islamabad, Karachi",
  "Asia/Qyzylorda": "(UTC+05:00) Qyzylorda",
  "Asia/Kolkata": "(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",
  "Asia/Colombo": "(UTC+05:30) Sri Jayawardenepura",
  "Asia/Kathmandu": "(UTC+05:45) Kathmandu",
  "Asia/Almaty": "(UTC+06:00) Astana",
  "Asia/Dhaka": "(UTC+06:00) Dhaka",
  "Asia/Omsk": "(UTC+06:00) Omsk",
  "Asia/Yangon": "(UTC+06:30) Yangon (Rangoon)",
  "Asia/Bangkok": "(UTC+07:00) Bangkok, Hanoi, Jakarta",
  "Asia/Barnaul": "(UTC+07:00) Barnaul, Gorno-Altaysk",
  "Asia/Hovd": "(UTC+07:00) Hovd",
  "Asia/Krasnoyarsk": "(UTC+07:00) Krasnoyarsk",
  "Asia/Novosibirsk": "(UTC+07:00) Novosibirsk",
  "Asia/Tomsk": "(UTC+07:00) Tomsk",
  "Asia/Shanghai": "(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",
  "Asia/Irkutsk": "(UTC+08:00) Irkutsk",
  "Asia/Singapore": "(UTC+08:00) Kuala Lumpur, Singapore",
  "Australia/Perth": "(UTC+08:00) Perth",
  "Asia/Taipei": "(UTC+08:00) Taipei",
  "Asia/Ulaanbaatar": "(UTC+08:00) Ulaanbaatar",
  "Australia/Eucla": "(UTC+08:45) Eucla",
  "Asia/Chita": "(UTC+09:00) Chita",
  "Asia/Tokyo": "(UTC+09:00) Osaka, Sapporo, Tokyo",
  "Asia/Pyongyang": "(UTC+09:00) Pyongyang",
  "Asia/Seoul": "(UTC+09:00) Seoul",
  "Asia/Yakutsk": "(UTC+09:00) Yakutsk",
  "Australia/Adelaide": "(UTC+09:30) Adelaide",
  "Australia/Darwin": "(UTC+09:30) Darwin",
  "Australia/Brisbane": "(UTC+10:00) Brisbane",
  "Australia/Sydney": "(UTC+10:00) Canberra, Melbourne, Sydney",
  "Pacific/Port_Moresby": "(UTC+10:00) Guam, Port Moresby",
  "Australia/Hobart": "(UTC+10:00) Hobart",
  "Asia/Vladivostok": "(UTC+10:00) Vladivostok",
  "Australia/Lord_Howe": "(UTC+10:30) Lord Howe Island",
  "Pacific/Bougainville": "(UTC+11:00) Bougainville Island",
  "Asia/Srednekolymsk": "(UTC+11:00) Chokurdakh",
  "Asia/Magadan": "(UTC+11:00) Magadan",
  "Pacific/Norfolk": "(UTC+11:00) Norfolk Island",
  "Asia/Sakhalin": "(UTC+11:00) Sakhalin",
  "Pacific/Guadalcanal": "(UTC+11:00) Solomon Is., New Caledonia",
  "Asia/Kamchatka": "(UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky",
  "Pacific/Auckland": "(UTC+12:00) Auckland, Wellington",
  "Etc/GMT-12": "(UTC+12:00) Coordinated Universal Time+12",
  "Pacific/Fiji": "(UTC+12:00) Fiji",
  "Pacific/Chatham": "(UTC+12:45) Chatham Islands",
  "Etc/GMT-13": "(UTC+13:00) Coordinated Universal Time+13",
  "Pacific/Tongatapu": "(UTC+13:00) Nuku'alofa",
  "Pacific/Apia": "(UTC+13:00) Samoa",
  "Pacific/Kiritimati": "(UTC+14:00) Kiritimati Island"
}

您可以在HTML / JS或其他任何地方使用这些列表。我将考虑在某个时候制作功能更全的JS库。

相关问题