Javascript 设置可变日期的时间和日期?

Javascript 设置可变日期的时间和日期?,javascript,Javascript,我有一个变量,我正在和今天的日期进行比较 var x = new Date(); x.setFullYear(2014, 6, 20); var today = new Date(); hour = printTime("-8"); console.log(x); if (x <=today){... var x=新日期(); x、 全年(2014年6月20日); var today=新日期(); 小时=打印时间(“-8”); 控制台日志(x)

我有一个变量,我正在和今天的日期进行比较

  var x = new Date();
    x.setFullYear(2014, 6, 20);
    var today = new Date();
    hour = printTime("-8");
    console.log(x);
    if (x <=today){...
var x=新日期();
x、 全年(2014年6月20日);
var today=新日期();
小时=打印时间(“-8”);
控制台日志(x);

如果(x我不太确定您真正想知道什么,但据我所知,您可以使用

  var x = new Date();
  x.setHours(23, 00);

您可以编写这样的函数,我包括UTC版本,因为JavaScript默认为本地时间,这取决于查看器所在的国家和夏时制

function setAll(d) {
    var ymd = Array.prototype.slice.call(arguments, 1, 4),
        hmsms = Array.prototype.slice.call(arguments, 4);
    if (ymd.length) d.setFullYear.apply(d, ymd);
    if (hmsms.length) d.setHours.apply(d, hmsms);
}

function setUTCAll(d) {
    var ymd = Array.prototype.slice.call(arguments, 1, 4),
        hmsms = Array.prototype.slice.call(arguments, 4);
    if (ymd.length) d.setUTCFullYear.apply(d, ymd);
    if (hmsms.length) d.setUTCHours.apply(d, hmsms);
}
然后假设您有
var d=new Date();
您可以使用

d.toISOString(); // "2014-06-20T19:12:29.452Z"
        //   y, m, d, h, m, s, ms
setAll(d, 2000, 1, 2, 3, 4, 5, 6); // months are zero-based in JavaScript
d.toISOString(); // "2000-02-02T03:04:05.006Z"

检查一下date()对象已经内置了时间值,您只需要实际设置该时间。如果您想将x设置为晚上11点,您可以简单地执行这个x=新日期(2014,6,20,23,00,00,00,00);我不明白是什么阻止您在构建日期@Paul S时直接传递这些值。是的,我错了…编辑了它