0

我的一个网络服务以下列格式返回一个对象。

{"UserID":"338040a3-6587-42bf-b22e-dc88f4ea3a9c","CompanyID":"823946a4-29d0-4546-a7ca-790648cf1e1a","FirstName":"Maxim","LastName":"Gershkovich","Username":"MaximG","Password":"62198e58d57843967bc34824be77ee2f1e2abcbbe389dc41c06810ed6f9561bf","Email":"email@email.net.au","SignupDate":"/Date(1272631625210)/","IsAdmin":true,"LoginTime":"/Date(1297129238517)/"}"

获取它返回的日期时间值并将其转换为 javascript 日期对象的最佳方法是什么?

"SignupDate":"/Date(1272631625210)/"

我能想到的唯一方法是剥离第一个和最后一个字符,然后进行评估。有没有更好的办法?

4

1 回答 1

5

您可以使用正则表达式和 Date 构造函数来完成。

不确定它是否更好,但它更安全。eval有时可能是邪恶的......

所以,你可以这样做:

var millisecs = signupDate.match(/\d+/)[0];
var date = new Date(parseInt(millisecs));

你也可以用替换来做正则表达式:

var millisecs = signupDate.replace(/[^\d]/g,""));
于 2011-02-08T02:02:56.080 回答