问题描述
查看他们所有很棒的文档!
这是他们讨论警告信息的地方。
字符串 + 格式
警告:浏览器对解析字符串的支持不一致。因为没有关于应该支持哪些格式的规范,所以在某些浏览器中有效的内容在其他浏览器中无效。
对于解析除 ISO 8601 字符串以外的任何内容的一致结果,您应该使用String + Format。
moment("12-25-1995", "MM-DD-YYYY");
字符串 + 格式(多种格式)
如果您有不止一种格式,请查看他们的String + Formats(带有“s”)。
如果您不知道输入字符串的确切格式,但知道它可能是众多格式之一,则可以使用格式数组。
moment("12-25-1995", ["MM-DD-YYYY", "YYYY-MM-DD"]);
时区
Checkout Parsing in Zone,时区的等效文档。
var b = moment.tz("May 12th 2014 8PM", "MMM Do YYYY hA", "America/Toronto");
//...
var dateFormat = "YYYY-M-D H:m"; //<-------- This part will get rid of the warning.
var aus1_s, aus2_s, aus3_s, aus4_s, aus5_s, aus6_s, aus6_e;
if ($("#custom1 :selected").val() == "AU" ) {
var region = 'Australia/Sydney';
aus1_s = moment.tz('2016-9-26 19:30', dateFormat, region);
aus2_s = moment.tz('2016-10-2 19:30', dateFormat, region);
aus3_s = moment.tz('2016-10-9 19:30', dateFormat, region);
aus4_s = moment.tz('2016-10-16 19:30', dateFormat, region);
aus5_s = moment.tz('2016-10-23 19:30', dateFormat, region);
aus6_s = moment.tz('2016-10-30 19:30', dateFormat, region);
aus6_e = moment.tz('2016-11-5 19:30', dateFormat, region);
} else if ($("#custom1 :selected").val() == "NZ" ) {
var region = 'Pacific/Auckland';
aus1_s = moment.tz('2016-9-28 20:30', dateFormat, region);
aus2_s = moment.tz('2016-10-4 20:30', dateFormat, region);
aus3_s = moment.tz('2016-10-11 20:30', dateFormat, region);
aus4_s = moment.tz('2016-10-18 20:30', dateFormat, region);
aus5_s = moment.tz('2016-10-25 20:30', dateFormat, region);
aus6_s = moment.tz('2016-11-2 20:30', dateFormat, region);
aus6_e = moment.tz('2016-11-9 20:30', dateFormat, region);
}
//...
解决方法
我收到一条警告,提示提供给 moment 的值不是可识别的 ISO 格式。我今天用 moment 函数更改了我的变量,但它仍然不起作用。
这是警告错误:
弃用警告:提供的值不是可识别的 ISO 格式。moment 构造回退到 js Date(),这在所有浏览器和版本中并不可靠。不鼓励使用非 ISO
日期格式,并将在即将发布的主要版本中删除。请参阅http://momentjs.com/guides/#/warnings/js-
date/了解更多信息。参数:[0]
_isAMomentObject: true,_isUTC: true,_useUTC: true,_l: undefined,_i:
2016-9-26 19:30,_f: undefined,_strict: undefined,_locale: [object Object]
var entryDate = new Date();
var currentDate = entryDate.getDate();
function between(x,min,max) {
return x.valueOf() >= min.valueOf() && x < max.valueOf();
}
$('#custom1').change(function () {
if ($('#custom1 :selected').val() == 'AU') {
var keyword = '';
var aus1_s = moment.tz('2016-9-26 19:30','Australia/Sydney');
var aus2_s = moment.tz('2016-10-2 19:30','Australia/Sydney');
var aus3_s = moment.tz('2016-10-9 19:30','Australia/Sydney');
var aus4_s = moment.tz('2016-10-16 19:30','Australia/Sydney');
var aus5_s = moment.tz('2016-10-23 19:30','Australia/Sydney');
var aus6_s = moment.tz('2016-10-30 19:30','Australia/Sydney');
var aus6_e = moment.tz('2016-11-5 19:30','Australia/Sydney');
} else if ($('#custom1 :selected').val() == 'NZ') {
var aus1_s = moment.tz('2016-9-28 20:30','Pacific/Auckland');
var aus2_s = moment.tz('2016-10-4 20:30','Pacific/Auckland');
var aus3_s = moment.tz('2016-10-11 20:30','Pacific/Auckland');
var aus4_s = moment.tz('2016-10-18 20:30','Pacific/Auckland');
var aus5_s = moment.tz('2016-10-25 20:30','Pacific/Auckland');
var aus6_s = moment.tz('2016-11-2 20:30','Pacific/Auckland');
var aus6_e = moment.tz('2016-11-9 20:30','Pacific/Auckland');
} else {
$('#entryEquals').val('');
return false;
}
var today = moment();
switch (true) {
case between(today,aus1_s,aus2_s):
keyword = 'RElYT04=';
break;
case between(today,aus2_s,aus3_s):
keyword = 'QlJJREU=';
break;
case between(today,aus3_s,aus4_s):
keyword = 'U1lETkVZ';
break;
case between(today,aus4_s,aus5_s):
keyword = 'R1JPT00=';
break;
case between(today,aus5_s,aus6_s):
keyword = 'V0VERElORw==';
break;
case between(today,aus6_s,aus6_e):
keyword = 'VExD';
break;
default:
$('#entryEquals').val('');
break;
}
$('#entryEquals').val(keyword);
});