JavaScript 打印格式

标签 javascript coding-style

我正在学习 NodeJS 并重写一些代码来看看它的比较如何。对于一个脚本,我尝试以字符串形式获取日期并将其转换为 JavaScript Date 对象来执行计算。

我设法通过将字符串转换为数组并处理每个字符来做到这一点。不过它看起来很丑,我想知道是否有更干净的方法,比如相当于 sprintf 之类的东西。我确信我可以找到一个模块,但我想知道 JS 中是否有本地方法。这就是我所拥有的:

var a = '081320141900'.split('');
creationDate = a[0] + a[1] + "/" + a[2] + a[3] + "/" + a[4] + a[5] + a[6] + a[7] + " " + a[8] + a[9] + ":" + a[10] + a[11];
console.log('Creation Date: ' + creationDate);

输出:

Creation Date: 08/13/2014 19:00

同样,上述工作正常,只是想知道是否可以做得更干净。

最佳答案

通常,您会使用 Date.parse ,但在这里,您不能,因为您输入的日期使用自定义格式。

但是有一些事情您可以改进:

  • 使用new Date()构建一个日期对象。然后您可以对其进行格式化。

  • 使用parseInt() (参见 this answer )在子字符串上(例如 a.substr(0, 2) )。

  • 验证您的输入。

  • 为变量使用更好的名称。 a不是一个好名字。

关于JavaScript 打印格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25494587/

相关文章:

variables - 有没有一种更简洁的方法可以稍后在代码中设置顶级变量而不使其成为 lateinit var?

javascript - $event 未在文本输入的 ng-change 中定义

javascript - 使用 Vuex 和 Vue Router 渲染函数 : “TypeError: Cannot read property of undefined” , 时出错

javascript - 在同一个选项卡中打开多个网页

java - 静态初始化数组?

ruby - 条件子句中的赋值是好的 ruby​​ 风格吗?

c# - 让 VS 2008 停止强制缩进命名空间的方法?

javascript - 解析特定值的 JavaScript 数组

javascript - jQuery AJAX 请求,语法不正确?

java - 在 Eclipse 中的空 block 之前删除新行