gpt4 book ai didi

Android模拟器的javascript日期问题

转载 作者:行者123 更新时间:2023-11-28 10:03:06 24 4
gpt4 key购买 nike

我正在尝试在 Android 模拟器浏览器上显示日期。当前代码在我的 PC Web 浏览器上运行良好,但在 Android 模拟器 Web 浏览器上无法正常运行。这是我为此目的使用的两个函数。

dayOfWeek('Sun Jan 08 2012 02:00:00 GMT+0200 (FLE Standard Time)');
dayOfWeek = function (d) {
var dayNames = new Array('SUN','MON','TUE','WED','THU','FRI','SAT');
var day = toTimestamp(d);
//alert(day);
return dayNames[day.getDay()];
}

toTimestamp = function (strDate){
return new Date(Date.parse(strDate));
}

我以“Sun Jan 08 2012 02:00:00 GMT+0200 (FLE Standard Time)”格式传递日期,您也可以在上面的代码中看到。

问题:问题出在 Android 模拟器浏览器上,它显示“未定义”,其中 ti 应该出现当天的名称,例如“周一、周二、周三”等。

如何解决这个问题?

过去我也遇到过同样的问题,然后通过以下功能解决了。我从互联网上的某个地方得到了这个功能。但现在它在这里不起作用我不知道为什么。

function relative_time(date_str) {
if (!date_str) {return;}
date_str = $.trim(date_str);
date_str = date_str.replace(/\.\d\d\d+/,""); // remove the milliseconds
date_str = date_str.replace(/-/,"/").replace(/-/,"/"); //substitute - with /
date_str = date_str.replace(/T/," ").replace(/Z/," UTC"); //remove T and substitute Z with UTC
date_str = date_str.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"); // +08:00 -> +0800
var parsed_date = new Date(date_str);
var relative_to = (arguments.length > 1) ? arguments[1] : new Date(); //defines relative to what ..default is now
var delta = parseInt((relative_to.getTime()-parsed_date)/1000);
delta=(delta<2)?2:delta;
var r = '';
if (delta < 60) {
r = delta + ' seconds ago';
} else if(delta < 120) {
r = 'a minute ago';
} else if(delta < (45*60)) {
r = (parseInt(delta / 60, 10)).toString() + ' minutes ago';
} else if(delta < (2*60*60)) {
r = 'an hour ago';
} else if(delta < (24*60*60)) {
r = '' + (parseInt(delta / 3600, 10)).toString() + ' hours ago';
} else if(delta < (48*60*60)) {
r = 'a day ago';
} else {
r = (parseInt(delta / 86400, 10)).toString() + ' days ago';
}
return 'about ' + r;
};

最佳答案

问题似乎是您在定义函数之前就使用了该函数。这就是您收到未定义错误的原因。尝试更改顺序,以便最后计算该函数。

dayOfWeek = function (d) {
var dayNames = new Array('SUN','MON','TUE','WED','THU','FRI','SAT');
var day = toTimestamp(d);
//alert(day);
return dayNames[day.getDay()];
}
toTimestamp = function (strDate){
return new Date(Date.parse(strDate));
}
dayOfWeek('Sun Jan 08 2012 02:00:00 GMT+0200 (FLE Standard Time)');

关于Android模拟器的javascript日期问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8781136/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com