1

是否有任何可用于 javascript 数据格式/转换的库?

示例:日期、时间、数字等可以转换为具有预定义格式的文本。

这些格式主要是基于语言环境的。但是应该有一些转换值(数据、日期、时间..)的机制,它也接受自定义格式以转换为所需的格式化文本。

相反,同一个库应该能够使用源格式知识将文本解析为值。

一些类似于 Spring 的 Property Editors 或 Converter 的东西。

快速搜索;http://numeraljs.com/ http://www.datejs.com/

我应该提到的事实是,我使用 DOJO 作为我们的 JS 小部件库,并且附带了用于处理格式化/解析的方法和类,捆绑在一起。

现在我们已经有了 DOJO,我将把代码放在库上的抽象层(包装器)中,以保持解决方案与库无关。

找到下面的代码 - 为简洁起见,只提到了片段,可能已经完成了 JSFiddle(可能在一两天内)。

// get the DOJO handle, either from global "dojo" variable or via AMD
// var dojo = require('dojo'); 
  ............
// for date
  dojo.date.locale.format(new Date(), {selector: "date",datePattern:"dd/mm/yyyy"});
// output: 31/06/2013

// for number
 dojo.number.format(9999999.99,{type: "decimal",pattern:"#,##,####.##"});
// output: 9,99,9999.99

  ............

注意:它解决的一个重要特性是它理解语言环境并且可以根据配置的语言环境自动进行格式化。DOJO 库坚定地遵循 Java 格式的数据格式。如果您是 Java Geek,您会发现库和格式语义很容易遵循。

找到这方面的 DOJO 链接://dojotoolkit.org/reference-guide/1.7/quickstart/numbersDates.html (无法发布完整链接,因为我没有足够的声誉,请在链接前加上“http”)

尽管如此,对于给定的上下文,我仍然希望有更好的解决方案。作为使用的库的一部分,我们主要使用 jQuery、Underscore、Backbone 和 DOJO,所有这些都用于应用程序中的特定目的。

4

1 回答 1

1

我将 Moment.js 用于我所有的 JS 日期格式和操作。http://momentjs.com/

于 2013-10-29T11:52:46.453 回答