我是node的新手,我在Node中经历了Date()对象,值和Date格式。当我运行以下代码时,我在控制台中得到不同的输出。
const date_1 = new Date();
console.log(date_1);
const date_2 = new Date();
console.log(+date_2);
const date_3 = new Date();
console.log('comma:',date_3);
const date_4 = new Date();
console.log('plus:'+date_4);

在控制台中给出以下输出?
2018-02-01T06:55:41.327Z
1517468141327
comma: 2018-02-01T06:55:41.327Z
plus:Thu Feb 01 2018 12:25:41 GMT+0530 (India Standard Time)
有人可以让我知道我在这里所缺少的理解。
答案 0 :(得分:3)
第一种和第三种情况显示为默认
new Date().toJSON()
对于第二种情况+新的Date()一元运算符,它相当于:
function(){ return Number(new Date); }
对于第四种情况'plus:'+ date_4,字符串连接在一起,因为日期相当于
'plus:'+date_4.toString()
答案 1 :(得分:2)
新Date()的值是通用格式(Z),因此当您记录日期时,会记录它的值。
console.log(date);
console.log('abc',date);
但是当使用带有多个+的+运算符时,它会将其转换为数字格式(日期为毫秒) -
console.log(+date);
console.log(1+'a'); // NaN
当你对字符串使用+时,它会获得日期的字符串索引,即2月01日2018 12:45:21 GMT + 0530(IST)
console.log(date.toString()); // Thu Feb 01 2018 12:45:21 GMT+0530 (IST)
答案 2 :(得分:2)
您隐含地将日期转换为其他内容:
const date_1 = new Date();
console.log(date_1); //prints date as a Date object
const date_2 = new Date();
console.log(+date_2); //converts date to a number
const date_3 = new Date();
console.log('comma:',date_3); //prints date as a Date object
const date_4 = new Date();
console.log('plus:'+date_4); //converts date to a String