草庐IT

javascript - 使用 moment.js 检查日期格式

我正在从我的屏幕上的日历中获取这种类型的输入DD-MMM-YYYYHH:mma但用户可以通过键盘提供日期。现在我必须检查用户是否以正确的格式提供了日期。我在我的应用程序中大量使用moment.js并像这样验证它if(angular.equals(moment(scope.modelValue).format('DD-MMM-YYYYHH:mma'),'Invaliddate')){alert('dateisnotcorrect');}else{alert('dateiscorrect');}它工作正常,但问题是如果我提供像“18-Feb-20152”这样的输入然后将其转换为“18-Fe

javascript - 在 Safari 中使用 Javascript 的 new Date()

我在使用Javascript中的新Date()函数时遇到问题。Safari给我一条“无效日期”消息。我在jsbin创建了一个简短示例.这似乎适用于所有其他浏览器,但不适用于Safari。关于如何从输入(例如2011-01-03)中获取值并将其转换为日期对象,同时使其在Safari中正常工作,有什么想法吗?非常感谢! 最佳答案 JavaScript上的日期解析行为依赖于实现,ISO8601格式最近被添加到ECMAScript第5版规范中,但尚未得到所有实现的支持。我建议您手动解析它,例如:functionparseDate(input

javascript - 从生日获取年龄

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:CalculateageinJavaScript在我的JS代码的某些地方,我有jquery日期对象,它是人的出生日期。我想根据出生日期计算一个人的年龄。任何人都可以提供有关如何实现此目标的示例代码。

javascript - 客户一周的第一天

是否可以使用纯javascript确定客户端计算机的区域设置?我需要得到一周的第一天。现在是星期天还是星期一。 最佳答案 我无法为您找到任何开箱即用的解决方案,但如果您想坚持这一努力,您可能会发现以下想法很有用:您可以使用JavaScript中的以下函数之一检测浏览器的区域设置:http://www.techrepublic.com/article/detect-foreign-language-support-using-javascript/5069931然后,您必须将区域设置(语言)映射到一周的首选开始日期。您可以使用支持I1

javascript - 如何禁用 Microsoft Edge 中的日期选择器?

我有几个类型为“date”的输入,并且想禁用MicrosoftEdge中的默认日期选择器,因为我使用的是jQuery的日期选择器。如何使用CSS或JavaScript禁用此功能?它在Chrome和Firefox中运行良好,但在Edge中运行不正常。工作JSFiddleHTMLJS$(document).ready(function(){if(!Modernizr.inputtypes.date||$(window).width()>=900){$('input[type=date]').datepicker();}});$(window).resize(function(){if(!M

javascript - 在 JavaScript 中处理公元 1000 年前的日期的技巧

我很好奇是否有人有任何好的解决方案来准确地建立公元1000年之前的日期-特别是公元1-100年。例如,如果我想为第一个千年的开始建立一个日期,我不能只做...newDate(Date.UTC(1,0,1,0,0,0,0));因为它试图变得“聪明”并假设1是1901,这给了我...SunDec31190018:00:00GMT-0600(CST)同样的事情发生在99年......newDate(Date.UTC(99,0,1,0,0,0,0));变成ThuDec31199818:00:00GMT-0600(CST)想法? 最佳答案 我

javascript - Angular 4 日期选择器语言环境无法正常工作

我正在使用ng-pick-datetime日期选择器的UI组件。我禁用了readonly模式,这样输入就可以用键盘输入了。我尝试使用date-fns应用RU语言环境:ru:any;ruLocale=require('date-fns/locale/ru');ngOnInit(){this.ru={firstDayOfWeek:1,dayNames:[...],dayNamesShort:[...],monthNames:[...],monthNamesShort:[...],dateFns:this.ruLocale};}当我输入dd.mm.yyyy格式的输入时,选择器将日作为月份,月

javascript - 如果用户的机器使用 12 小时制(上午/下午)或 24 小时制(军用时间),则使用 javascript 进行检测

是否可以检测用户的机器是使用12小时制(上午/下午)还是24小时制(军用时间)?一种方法是检查用户的语言环境,但它只是大量的语言环境比较列表,来自美国的人想要12小时时钟可以只将en语言环境发送给我,而不是US_en,我无法知道她的偏好。与此同时,来自美国的某人可能将她的机器设置为使用12小时制时间格式,但不想要12小时制。编辑:date.toLocaleTimeString();理论上可行,正如用户Mouser在下面建议的那样,但不幸的是它是bugged在WebKit浏览器上(在Chrome和Windows上的新Opera上测试)并且由于某种原因总是返回上午/下午时间。示例:http

javascript - 如何在 javascript 中安全地解析日期 HTTP header

如果我使用Date.parse(),我“几乎可以保证”能够解析我程序中的内容吗?在Mozilla'sentryforDate.parse,他们写道:Givenastringrepresentingatime,parse()returnsthetimevalue.ItacceptstheRFC2822/IETFdatesyntax(RFC2822Section3.3),e.g."Mon,25Dec199513:30:00GMT".我自己的服务器返回Sun,24May201505:37:13GMT。问题是,WikipediatellsmethattheDateheaderfollowsth

使用绝对时区的 Javascript 倒计时?

我有一个javascript倒数计时器,它通过指定日期和时间并将其与当前日期和时间进行比较来工作。问题是,当前时间是相对于用户时区而言的,因此剩余时间因用户而异。如何让计时器倒计时到特定时区的某个时间,在我的例子中是GMT-5小时?我知道我可以使用下面的代码来获取用户时区,但我不知道如何使用它。myDateObj.getTimezoneOffset()/60 最佳答案 您可以使用Date.UTC(year,month,day,hours,minutes,seconds,msec)它的操作就像Date构造函数一样,但返回格林威治时间(