在Javascript中格式化字符串 - 将函数从python转换为javascript

时间:2013-07-23 19:29:12

标签: javascript jquery python string

如何在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是否允许您执行与此类似的操作?如果是这样,怎么样?

谢谢!

2 个答案:

答案 0 :(得分:1)

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

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

Here's one of them (sprintf)遵循printf语法,here's another one使用format语法。

答案 1 :(得分: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,但这似乎是你想要做的......