0

你如何在Javascript中格式化字符串?我写了 python 代码,我正在尝试将它翻译成 javascript,但我不太确定如何

Python代码:

def conv(t):
    return '%02d:%02d:%02d.%03d' % (
        t / 1000 / 60 / 60,
        t / 1000 / 60 % 60,
        t / 1000 % 60 + 12,
        t % 1000)

javascript/jquery 是否允许您执行类似的操作?如果是这样,怎么办?

谢谢!

4

2 回答 2

1

我能想到的最接近你的 python 代码:

   function conv(t){
    t= [ 
        t / 1000 / 60 / 60,
        t / 1000 / 60 % 60,
        t / 1000 % 60 , 
        t % 1000 ].map( Math.floor );

        t[2]=t[2]+"."+( t.pop() + "0000").slice(0,3);

     return t.join(":").replace(/\b(\d)\b/g,"0$1");
   }

//test it out:
new Date(12345678).toISOString().split("T")[1].slice(0,-1); // == 03:25:45.678 
conv(12345678); // == 03:25:45.678

请原谅,如果它不正确,我不知道python,但这似乎是你想要做的......

于 2013-07-23T20:06:36.777 回答
1

您所指的基本上是printf/ String.Format-like 操作。不幸的是,JavaScript 目前没有任何内置的方法来做到这一点(这太糟糕了,真的)。

当然,有许多库提供了这种功能。

这是其中一个(sprintf),它遵循printf语法,这是另一个使用format语法的。

于 2013-07-23T19:32:17.260 回答