如何在我的javascript文件中调用各种goog.i18n.TimeZone实例方法?
为了调用goog.i18n.TimeZone的各种实例方法,我尝试了大量goog.require和goog.inherits的组合,但仍然没有达到目标。请有人告诉我正确的方法是什么如何在我的javascript文件中调用各种goog.i18n.TimeZone实例方法?,javascript,google-closure,google-closure-library,Javascript,Google Closure,Google Closure Library,为了调用goog.i18n.TimeZone的各种实例方法,我尝试了大量goog.require和goog.inherits的组合,但仍然没有达到目标。请有人告诉我正确的方法是什么 已经完成了谷歌闭包库文档。因此,如果使用Example.js进行演示,这将非常有帮助。我发现学习闭包库的最佳方法之一是使用 图书馆本身。如果您还没有这样做,请克隆。然后您可以查看:。寻找任何 测试类中与用例匹配的单元测试方法。例如,简单时区: function testSimpleTimeZoneZero() {
已经完成了谷歌闭包库文档。因此,如果使用Example.js进行演示,这将非常有帮助。我发现学习闭包库的最佳方法之一是使用 图书馆本身。如果您还没有这样做,请克隆。然后您可以查看:。寻找任何 测试类中与用例匹配的单元测试方法。例如,简单时区:
function testSimpleTimeZoneZero() {
var date = new Date();
var simpleTimeZone = goog.i18n.TimeZone.createTimeZone(0);
assertEquals(0, simpleTimeZone.getOffset(date));
assertEquals('GMT+00:00', simpleTimeZone.getGMTString(date));
assertEquals('Etc/GMT', simpleTimeZone.getTimeZoneId());
assertEquals('UTC', simpleTimeZone.getLongName(date));
assertEquals('UTC', simpleTimeZone.getShortName(date));
assertEquals('+0000', simpleTimeZone.getRFCTimeZoneString(date));
assertEquals(false, simpleTimeZone.isDaylightTime(date));
}
您必须注意的时区类的另一个方面是,它需要数据才能运行。
从文件中:
i18n.时区扩展
TimeZone类为客户端应用程序实现了时区解析和名称信息源。时区对象是从时区信息对象启动的。应用程序可以静态启动时区,也可以选择从服务器获取的数据启动时区。每个时区信息数组都很小,但整个数据集太多,客户端应用程序无法下载。如果允许最终用户更改时区设置,则应使用动态检索。如果只知道时区偏移量,则存在一个适当的回退,即仅使用时区偏移量创建时区对象。一套完整的时区信息数组在下面可用。它基于CLDR/ICU和奥尔森时区数据库生成,并将及时更新
单元测试显示了一种在文件顶部静态加载此数据的机制