我正在使用此代码将日期对象转换为日期字符串。
var startDate = dateObject;
var dateString = startDate.getMonth() + 1 + "/" + startDate.getDate() + "/" + startDate.getFullYear(); // to display in "M/d/yyyy" format
在IE 10中需要0.003秒才会发生,我转换的日期超过10000个,这会影响我的应用的整体性能。 有没有办法改善效果?
我正在使用此代码来检查性能。
var d = new Date();
var startDate = dateObject;
var dateString = startDate.getMonth() + 1 + "/" + startDate.getDate() + "/" + startDate.getFullYear();
$startTimeCol.html(dateString);
var ticks = ((new Date() - d) / 1000);
console.log("toString: " + ticks + "sec");
答案 0 :(得分:1)
好的,这花了一些时间来组合并测试。
您希望最有可能想要使用String()。concat。在此处查看比较代码http://jsfiddle.net/VbCyP/1/
我比较了3个版本:字符串连接与+,字符串连接与数组和连接,以及String.concat。
在2009 Macbook上测试最新版本的Chrome,Safari和Firefox时,String()。concat始终是此操作的最快版本。
来自jsfiddle的示例代码:
var x = String().concat(dates[i].getMonth() + 1, '/', dates[i].getDate(), '/', dates[i].getFullYear());