我有一个简单的片段,可以打印全天,月,日,小时和分钟。
这是代码: http://jsfiddle.net/raNms/
我想改变
的位置Monday > Mon
Tuesday > Tue
...
和月:
January > Jan
February > Feb
...
可以在追加到身体之前完成吗?我不想替换附加的文本,而是从头开始正确打印。
JavaScript:
var now= new Date(),
ampm= 'am',
h= now.getHours(),
m= now.getMinutes(),
s= now.getSeconds();
if(h>= 12){
if(h>12)h-= 12;
ampm= 'pm';
}
if(h<10) h= '0'+h;
if(m<10) m= '0'+m;
var time = now.toLocaleDateString()+' '+h+':'+m+' '+ampm
$('body').html(time);
答案 0 :(得分:1)
这是一种很好的方式:http://www.webdevelopersnotes.com/tips/html/getting_current_time_using_javascript.php3
以下是您的代码与更改的相似之处:
输出:
Sat, Jan 7 2012 04:21 pm
代码:
var now= new Date(),
ampm= 'am',
h= now.getHours(),
m= now.getMinutes(),
s= now.getSeconds();
if(h>= 12){
if(h>12)h-= 12;
ampm= 'pm';
}
if(h<10) h= '0'+h;
if(m<10) m= '0'+m;
var weekdayNames = new Array("Sun", "Mon", "Tuey",
"Wed", "Thu", "Fri", "Sat");
var monthNames = new Array("Jan", "Feb", "Mar",
"Apr", "May", "Jun", "Jul", "Aug", "Sep",
"Oct", "Nov", "Dec");
//var dateString = now.toLocaleDateString();
var weekday = weekdayNames[now.getDay()];
var month = monthNames[now.getMonth()];
var dateString = weekday + ', ' + month + ' ' + now.getDate() + ' ' + now.getFullYear();
var time = dateString +' '+h+':'+m+' '+ampm
$('body').html(time);
我还为它创建了一个jsFiddle http://jsfiddle.net/luisperezphd/raNms/2/
答案 1 :(得分:1)
只需添加:
var txt = now.toLocaleDateString().replace(/\b[a-z]+\b/gi,function($0){return $0.substring(0,3)});
答案 2 :(得分:0)
一个简单的方法:
var now= new Date(),
ampm= 'am',
h= now.getHours(),
m= now.getMinutes(),
s= now.getSeconds();
if(h>= 12){
if(h>12)h-= 12;
ampm= 'pm';
}
if(h<10) h= '0'+h;
if(m<10) m= '0'+m;
t = now.toLocaleDateString();
var time = t.split(',')[0].substring(0,3) + ', ' +
t.split(',')[1].substring(1,4) + ' ' +
t.split(',')[1].split(' ')[2] +
t.split(',')[2] + ', ' +
' '+h+':'+m+' '+ampm
$('body').html(time);
输出:
Sat, Jan 07 2012, 10:20 pm
答案 3 :(得分:0)
使用合适的库,例如Globalize.js。处理这类事情的特殊代码需要更多工作,往往不太可靠,并且当您需要修改软件时意味着负担。
示例:
Globalize.format(today,'ddd, MMM d, yyyy') + ' ' + Globalize.format(today,'T')
产生例如
Sat, Jan 7, 2012 11:32:21 PM
您可以通过修改格式化字符串来调整外观。
请注意,toLocaleString
根据定义是系统相关的,因此它可能会生成任何语言的工作日名称(或根本不会)。以下是您的代码在我的环境中在一个浏览器上生成的内容:
“7。 tammikuuta 2012 11:26 pm“。