Last active
November 2, 2017 10:49
-
-
Save zymr-keshav/bee9b9d7ad9fc46da2b90788e88fb79d to your computer and use it in GitHub Desktop.
Date object with diffrenet arguments as on new chrome
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let today = new Date(); | |
console.log(today); // return current Date 2017-11-02T09:34:04.471Z | |
// single argument | |
let arg1_positive = new Date(0); // or 100 any positive number return same | |
console.log("arg1_positive", arg1_positive); // return epoch time 1970-01-01T00:00:00.000Z | |
let arg1_negative = new Date(-1); // return provided number millisecond back from ecoch | |
console.log(arg1_negative); // return 1 millisecond before epoch time 1969-12-31T23:59:59.999Z | |
let arg1_null = new Date(null); | |
console.log("arg1_null", arg1_null); // return 1970-01-01T00:00:00.000Z | |
let arg1_empty_array = new Date([]); | |
console.log("arg1_empty_array", arg1_empty_array); // Invalid Date | |
let arg1_empty_string = new Date(""); | |
console.log("arg1_empty_string", arg1_empty_string); // Invalid Date | |
let arg1_undefined = new Date(undefined); | |
console.log("arg1_undefined", arg1_undefined); // Invalid Date | |
let arg1_empty_object = new Date({}); | |
console.log("arg1_empty_object", arg1_empty_object); // Invalid date | |
// now if we provide one argument in string than it gives amazing result | |
// specific date SD == 1899-12-30T18:30:00.000Z or Sun Dec 31 1899 00:00:00 GMT+0530 (IST) | |
let arg1_string_0 = new Date("0"); // SD + 100 years + 1 day as we can not write Date(100,0,1) | |
console.log("arg1_string_0", arg1_string_0); // 1999-12-31T18:30:00.000Z | |
let arg1_string_1 = new Date("1"); | |
console.log("arg1_string_1", arg1_string_1); // 2000-12-31T18:30:00.000Z | |
let arg1_string_2 = new Date("2"); | |
console.log("arg1_string_2", arg1_string_2); // 2001-01-31T18:30:00.000Z | |
let arg2_number = new Date(0, 0); // return SD = new Date (0,0,1) | |
console.log("arg2_number", arg2_number); // 1899-12-31T18:30:00.000Z | |
let arg3_number = new Date(0, 0, 0); // === SD | |
console.log("arg3_number SD", arg3_number); // 1899-12-30T18:30:00.000Z | |
let arg2_neg_number_11 = new Date(-1, -1); // | |
console.log("arg2_neg_number_11", arg2_neg_number_11); // -000002-11-30T18:30:00.000Z ??? | |
let arg2_neg_number_01 = new Date(0, -1); // 1 month less than SD | |
console.log("arg2_neg_number_01", arg2_neg_number_01); // 1899-11-30T18:30:00.000Z | |
let arg2_neg_number_10 = new Date(-1, 0); // | |
console.log("arg2_neg_number_10", arg2_neg_number_10); // -000002-12-31T18:30:00.000Z. ??? | |
let arg2_number_10 = new Date(1, 0); // sd + 1 year | |
console.log("arg2_number_10", arg2_number_10); // 1900-12-31T18:30:00.000Z | |
let arg2_number_01 = new Date(0, 1); // SD + 1 month | |
console.log("arg2_number_01", arg2_number_01); // 1900-01-31T18:30:00.000Z | |
let arg2_number_11 = new Date(1, 1); // SD + 1 year + 1 month | |
console.log("arg2_number_11", arg2_number_11); // 1901-01-31T18:30:00.000Z | |
let arg2_neg_number__11 = new Date(1, -1); // SD + 1 year - 1 month | |
console.log("arg2_neg_number__11", arg2_neg_number__11); // 1900-11-30T18:30:00.000Z | |
let arg3_number_111 = new Date(1, 1, 1); // SD + 1 year + 1 month + 1 day | |
console.log("arg3_number_111", arg3_number_111); // 1901-01-31T18:30:00.000Z | |
let arg3_number_101 = new Date(1, 0, 1); // sd + 1 year + 1 day | |
console.log("arg3_number_101", arg3_number_101); // 1900-12-31T18:30:00.000Z | |
let arg3_number_001 = new Date(0, 0, 1); // SD + 1 days | |
console.log("arg3_number_001", arg3_number_001); // 1899-12-31T18:30:00.000Z | |
let arg3_number_100 = new Date(1, 0, 0); // SD + 1 year | |
console.log("arg3_number_100", arg3_number_100); // 1900-12-30T18:30:00.000Z | |
let arg3_number_010 = new Date(0, 1, 0); // SD + 1 month | |
console.log("arg3_number_010", arg3_number_010); // 1900-01-30T18:30:00.000Z | |
let arg3_number_110 = new Date(1, 1, 0); // SD + 1 year + 1 month | |
console.log("arg3_number_110", arg3_number_110); // 1901-01-30T18:30:00.000Z | |
let arg3_null = new Date(null, null, null); // SD | |
console.log("arg3_null", arg3_null); // 1899-12-30T18:30:00.000Z | |
let arg3_empty_array = new Date([], [], []); // SD | |
console.log("arg3_empty_array", arg3_empty_array); //1899-12-30T18:30:00.000Z | |
let arg3_empty_string = new Date("", "", ""); // SD | |
console.log("arg3_empty_string", arg3_empty_string); //1899-12-30T18:30:00.000Z | |
let arg3_negative_number = new Date(-1, -1, -1); // return weired date | |
console.log("arg3_negative_number", arg3_negative_number); // -000002-11-28T18:30:00.000Z | |
let arg3_zero_string = new Date("0", "0", "0"); // SD | |
console.log("arg3_zero_string", arg3_zero_string); // 1899-12-30T18:30:00.000Z | |
let arg3_one_string = new Date("1", "1", "1"); // SD + 1 year + 1 month + 1 day == new Date (1,1,1) | |
console.log("arg3_one_string", arg3_one_string); // 1901-01-31T18:30:00.000Z | |
let arg3_100year = new Date(2000, 0, 1); // === new Date("0") | |
console.log("arg3_100year", arg3_100year); //1999-12-31T18:30:00.000Z | |
let arg3_101year = new Date(2001, 0, 1); // === new Date("1") | |
console.log("arg3_101year", arg3_101year); // 2000-12-31T18:30:00.000Z | |
let arg3_zero_string = new Date("0", "0", "0"); // SD | |
console.log("arg3_zero_string", arg3_zero_string); // 1899-12-30T18:30:00.000Z | |
let arg3_one_string = new Date("1", "1", "1"); // SD + 1 year + 1 month + 1 day == new Date (1,1,1) | |
console.log("arg3_one_string", arg3_one_string); // 1901-01-31T18:30:00.000Z | |
let arg3_100year = new Date(2000, 0, 1); // === new Date("0") | |
console.log("arg3_100year", arg3_100year); //1999-12-31T18:30:00.000Z | |
let arg3_101year = new Date(2001, 0, 1); // === new Date("1") | |
console.log("arg3_101year", arg3_101year); // 2000-12-31T18:30:00.000Z |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment