我正在我的节目中放入一个复活节彩蛋,导致万圣节上出现一个插孔灯图像,但我无法将该代码识别为10月31日作为一个月/天。当我在我的代码上执行console.log时,它会反馈“2017年10月30日星期一”而不是第31天。
var today = new Date();
var halloween = new Date(today.getFullYear() + '10-31');
console.log(halloween.toDateString());
console.log(today.toDateString());
if (today.toDateString() === halloween.toDateString()) {
printedMsg.innerHTML = rewardMsg + 'You deserve a spooky treat! ' +
'<img src="https://preview.c9users.io/mkrul/color_project/reward-imgs/boo.jpg">';
}
编辑:我把丢失的连字符放在'-10-31'前面,但控制台仍然显示“2017年10月30日星期一”
var halloween = new Date(today.getFullYear() + '-10-31');
答案 0 :(得分:0)
你错过了一个连字符:
public function method_name()
{
if(isset($_POST))
{
$insert_array = array(
'value1' => $_POST['value1'],
'value2' => $_POST['value2'],
'value3' => $_POST['value3'],
'value4' => $_POST['value4'],
);
$res = $this->model_name_db->insertValues($insert_array);
if( $res > 0 )
{
echo"1";exit;
}
else
{
echo"0";exit;
}
}
else
{
// your action
}
}
将返回
var today = new Date();
var halloween = new Date(today.getFullYear() + '-10-31');
console.log(halloween.toDateString());
答案 1 :(得分:0)
在ECMAScript中,解析字符串是有问题的,即使您获得正确的格式,您也会传递一个将被视为UTC的日期格式,因此代表您希望格林威治以西用户所需的日期前一天。
另见Why does Date.parse give incorrect results?
所以不要依赖内置的解析器,直接传递组件:
var halloween = new Date(new Date().getFullYear(), 9, 31);
console.log('Halloween is on ' + halloween.toString());
&#13;