Get String in YYYYMMDD format from JS date object?

JavascriptDateDate Formatting

Javascript Problem Overview


I'm trying to use JS to turn a date object into a string in YYYYMMDD format. Is there an easier way than concatenating Date.getYear(), Date.getMonth(), and Date.getDay()?

Javascript Solutions


Solution 1 - Javascript

Altered piece of code I often use:

Date.prototype.yyyymmdd = function() {
  var mm = this.getMonth() + 1; // getMonth() is zero-based
  var dd = this.getDate();

  return [this.getFullYear(),
          (mm>9 ? '' : '0') + mm,
          (dd>9 ? '' : '0') + dd
         ].join('');
};

var date = new Date();
date.yyyymmdd();

Solution 2 - Javascript

I didn't like adding to the prototype. An alternative would be:

var rightNow = new Date();
var res = rightNow.toISOString().slice(0,10).replace(/-/g,"");

<!-- Next line is for code snippet output only -->
document.body.innerHTML += res;

Solution 3 - Javascript

You can use the toISOString function :

var today = new Date();
today.toISOString().substring(0, 10);

It will give you a "yyyy-mm-dd" format.

Solution 4 - Javascript

Moment.js could be your friend

var date = new Date();
var formattedDate = moment(date).format('YYYYMMDD');

Solution 5 - Javascript

new Date('Jun 5 2016').
  toLocaleString('en-us', {year: 'numeric', month: '2-digit', day: '2-digit'}).
  replace(/(\d+)\/(\d+)\/(\d+)/, '$3-$1-$2');

// => '2016-06-05'

Solution 6 - Javascript

This is a single line of code that you can use to create a YYYY-MM-DD string of today's date.

var d = new Date().toISOString().slice(0,10);

Solution 7 - Javascript

If you don't need a pure JS solution, you can use jQuery UI to do the job like this :

$.datepicker.formatDate('yymmdd', new Date());

I usually don't like to import too much libraries. But jQuery UI is so useful, you will probably use it somewhere else in your project.

Visit http://api.jqueryui.com/datepicker/ for more examples

Solution 8 - Javascript

I don't like modifying native objects, and I think multiplication is clearer than the string padding the accepted solution.

function yyyymmdd(dateIn) {
  var yyyy = dateIn.getFullYear();
  var mm = dateIn.getMonth() + 1; // getMonth() is zero-based
  var dd = dateIn.getDate();
  return String(10000 * yyyy + 100 * mm + dd); // Leading zeros for mm and dd
}

var today = new Date();
console.log(yyyymmdd(today));

Fiddle: http://jsfiddle.net/gbdarren/Ew7Y4/

Solution 9 - Javascript

In addition to o-o's answer I'd like to recommend separating logic operations from the return and put them as ternaries in the variables instead.

Also, use concat() to ensure safe concatenation of variables

Date.prototype.yyyymmdd = function() {
  var yyyy = this.getFullYear();
  var mm = this.getMonth() < 9 ? "0" + (this.getMonth() + 1) : (this.getMonth() + 1); // getMonth() is zero-based
  var dd = this.getDate() < 10 ? "0" + this.getDate() : this.getDate();
  return "".concat(yyyy).concat(mm).concat(dd);
};

Date.prototype.yyyymmddhhmm = function() {
  var yyyymmdd = this.yyyymmdd();
  var hh = this.getHours() < 10 ? "0" + this.getHours() : this.getHours();
  var min = this.getMinutes() < 10 ? "0" + this.getMinutes() : this.getMinutes();
  return "".concat(yyyymmdd).concat(hh).concat(min);
};

Date.prototype.yyyymmddhhmmss = function() {
  var yyyymmddhhmm = this.yyyymmddhhmm();
  var ss = this.getSeconds() < 10 ? "0" + this.getSeconds() : this.getSeconds();
  return "".concat(yyyymmddhhmm).concat(ss);
};

var d = new Date();
document.getElementById("a").innerHTML = d.yyyymmdd();
document.getElementById("b").innerHTML = d.yyyymmddhhmm();
document.getElementById("c").innerHTML = d.yyyymmddhhmmss();

<div>
  yyyymmdd: <span id="a"></span>
</div>
<div>
  yyyymmddhhmm: <span id="b"></span>
</div>
<div>
  yyyymmddhhmmss: <span id="c"></span>
</div>

Solution 10 - Javascript

Local time:

var date = new Date();
date = date.toJSON().slice(0, 10);

UTC time:

var date = new Date().toISOString();
date = date.substring(0, 10);

date will print 2020-06-15 today as i write this.

toISOString() method returns the date with the ISO standard which is YYYY-MM-DDTHH:mm:ss.sssZ

The code takes the first 10 characters that we need for a YYYY-MM-DD format.

If you want format without '-' use:

var date = new Date();
date = date.toJSON().slice(0, 10).split`-`.join``;

In .join`` you can add space, dots or whatever you'd like.

Solution 11 - Javascript

Plain JS (ES5) solution without any possible date jump issues caused by Date.toISOString() printing in UTC:

var now = new Date();
var todayUTC = new Date(Date.UTC(now.getFullYear(), now.getMonth(), now.getDate()));
return todayUTC.toISOString().slice(0, 10).replace(/-/g, '');

This in response to @weberste's comment on @Pierre Guilbert's answer.

Solution 12 - Javascript

// UTC/GMT 0
document.write('UTC/GMT 0: ' + (new Date()).toISOString().slice(0, 19).replace(/[^0-9]/g, "")); // 20150812013509

// Client local time
document.write('<br/>Local time: ' + (new Date(Date.now()-(new Date()).getTimezoneOffset() * 60000)).toISOString().slice(0, 19).replace(/[^0-9]/g, "")); // 20150812113509

Solution 13 - Javascript

Another way is to use toLocaleDateString with a locale that has a big-endian date format standard, such as Sweden, Lithuania, Hungary, South Korea, ...:

date.toLocaleDateString('se')

To remove the delimiters (-) is just a matter of replacing the non-digits:

console.log( new Date().toLocaleDateString('se').replace(/\D/g, '') );

This does not have the potential error you can get with UTC date formats: the UTC date may be one day off compared to the date in the local time zone.

Solution 14 - Javascript

var someDate = new Date();
var dateFormated = someDate.toISOString().substr(0,10);

console.log(dateFormated);

Solution 15 - Javascript

dateformat is a very used package.

How to use:

Download and install dateformat from NPM. Require it in your module:

const dateFormat = require('dateformat');

and then just format your stuff:

const myYYYYmmddDate = dateformat(new Date(), 'yyyy-mm-dd');

Solution 16 - Javascript

You can simply use This one line code to get date in year

var date = new Date().getFullYear() + "-" + (parseInt(new Date().getMonth()) + 1) + "-" + new Date().getDate();

Solution 17 - Javascript

Shortest

.toJSON().slice(0,10).split`-`.join``;

let d = new Date();

let s = d.toJSON().slice(0,10).split`-`.join``;

console.log(s);

Solution 18 - Javascript

This guy here => http://blog.stevenlevithan.com/archives/date-time-format wrote a format() function for the Javascript's Date object, so it can be used with familiar literal formats.

If you need full featured Date formatting in your app's Javascript, use it. Otherwise if what you want to do is a one off, then concatenating getYear(), getMonth(), getDay() is probably easiest.

Solution 19 - Javascript

Little bit simplified version for the most popular answer in this thread https://stackoverflow.com/a/3067896/5437379 :

function toYYYYMMDD(d) {
    var yyyy = d.getFullYear().toString();
    var mm = (d.getMonth() + 101).toString().slice(-2);
    var dd = (d.getDate() + 100).toString().slice(-2);
    return yyyy + mm + dd;
}

Solution 20 - Javascript

How about Day.js?

It's only 2KB, and you can also dayjs().format('YYYY-MM-DD').

https://github.com/iamkun/dayjs

Solution 21 - Javascript

Use padStart:

Date.prototype.yyyymmdd = function() {
    return [
        this.getFullYear(),
        (this.getMonth()+1).toString().padStart(2, '0'), // getMonth() is zero-based
        this.getDate().toString().padStart(2, '0')
    ].join('-');
};

Solution 22 - Javascript

Working from @o-o's answer this will give you back the string of the date according to a format string. You can easily add a 2 digit year regex for the year & milliseconds and the such if you need them.

Date.prototype.getFromFormat = function(format) {
    var yyyy = this.getFullYear().toString();
    format = format.replace(/yyyy/g, yyyy)
    var mm = (this.getMonth()+1).toString(); 
    format = format.replace(/mm/g, (mm[1]?mm:"0"+mm[0]));
    var dd  = this.getDate().toString();
    format = format.replace(/dd/g, (dd[1]?dd:"0"+dd[0]));
    var hh = this.getHours().toString();
    format = format.replace(/hh/g, (hh[1]?hh:"0"+hh[0]));
    var ii = this.getMinutes().toString();
    format = format.replace(/ii/g, (ii[1]?ii:"0"+ii[0]));
    var ss  = this.getSeconds().toString();
    format = format.replace(/ss/g, (ss[1]?ss:"0"+ss[0]));
    return format;
};

d = new Date();
var date = d.getFromFormat('yyyy-mm-dd hh:ii:ss');
alert(date);

I don't know how efficient that is however, especially perf wise because it uses a lot of regex. It could probably use some work I do not master pure js.

NB: I've kept the predefined class definition but you might wanna put that in a function or a custom class as per best practices.

Solution 23 - Javascript

This code is fix to Pierre Guilbert's answer:

(it works even after 10000 years)

YYYYMMDD=new Date().toISOString().slice(0,new Date().toISOString().indexOf("T")).replace(/-/g,"")

Solution 24 - Javascript

Answering another for Simplicity & readability.
Also, editing existing predefined class members with new methods is not encouraged:

function getDateInYYYYMMDD() {
    let currentDate = new Date();

    // year
    let yyyy = '' + currentDate.getFullYear();

    // month
    let mm = ('0' + (currentDate.getMonth() + 1));  // prepend 0 // +1 is because Jan is 0
    mm = mm.substr(mm.length - 2);                  // take last 2 chars

    // day
    let dd = ('0' + currentDate.getDate());         // prepend 0
    dd = dd.substr(dd.length - 2);                  // take last 2 chars

    return yyyy + "" + mm + "" + dd;
}

var currentDateYYYYMMDD = getDateInYYYYMMDD();
console.log('currentDateYYYYMMDD: ' + currentDateYYYYMMDD);

Solution 25 - Javascript

[day,,month,,year]= Intl.DateTimeFormat(undefined, { year: 'numeric', month: '2-digit', day: '2-digit' }).formatToParts(new Date()),year.value+month.value+day.value

or

new Date().toJSON().slice(0,10).replace(/\/|-/g,'')

Solution 26 - Javascript

From ES6 onwards you can use template strings to make it a little shorter:

var now = new Date();
var todayString = `${now.getFullYear()}-${now.getMonth()}-${now.getDate()}`;

This solution does not zero pad. Look to the other good answers to see how to do that.

Solution 27 - Javascript

It seems that mootools provides Date().format(): https://mootools.net/more/docs/1.6.0/Types/Date

I'm not sure if it worth including just for this particular task though.

Solution 28 - Javascript

I usually use the code below when I need to do this.

var date = new Date($.now());
var dateString = (date.getFullYear() + '-'
    + ('0' + (date.getMonth() + 1)).slice(-2)
    + '-' + ('0' + (date.getDate())).slice(-2));
console.log(dateString); //Will print "2015-09-18" when this comment was written

To explain, .slice(-2) gives us the last two characters of the string.

So no matter what, we can add "0" to the day or month, and just ask for the last two since those are always the two we want.

So if the MyDate.getMonth() returns 9, it will be:

("0" + "9") // Giving us "09"

so adding .slice(-2) on that gives us the last two characters which is:

("0" + "9").slice(-2)

"09"

But if date.getMonth() returns 10, it will be:

("0" + "10") // Giving us "010"

so adding .slice(-2) gives us the last two characters, or:

("0" + "10").slice(-2)

"10"

Solution 29 - Javascript

If you don't mind including an additional (but small) library, Sugar.js provides lots of nice functionality for working with dates in JavaScript. To format a date, use the format function:

new Date().format("{yyyy}{MM}{dd}")

Solution 30 - Javascript

If using AngularJs (up to 1.5) you can use the date filter:

var formattedDate = $filter('date')(myDate, 'yyyyMMdd')

Solution 31 - Javascript

yyyymmdd=x=>(f=x=>(x<10&&'0')+x,x.getFullYear()+f(x.getMonth()+1)+f(x.getDate()));
alert(yyyymmdd(new Date));

Solution 32 - Javascript

date-shortcode to the rescue!

const dateShortcode = require('date-shortcode')
dateShortcode.parse('{YYYYMMDD}', new Date())
//=> '20180304'

Solution 33 - Javascript

A little variation for the accepted answer:

function getDate_yyyymmdd() {

    const date = new Date();

    const yyyy = date.getFullYear();
    const mm = String(date.getMonth() + 1).padStart(2,'0');
    const dd = String(date.getDate()).padStart(2,'0');

    return `${yyyy}${mm}${dd}`
}

console.log(getDate_yyyymmdd())

Solution 34 - Javascript

Here is a more generic approach which allows both date and time components and is identically sortable as either number or string.

Based on the number order of Date ISO format, convert to a local timezone and remove non-digits. i.e.:

// monkey patch version
Date.prototype.IsoNum = function (n) {
    var tzoffset = this.getTimezoneOffset() * 60000; //offset in milliseconds
    var localISOTime = (new Date(this - tzoffset)).toISOString().slice(0,-1);
    return localISOTime.replace(/[-T:\.Z]/g, '').substring(0,n || 20); // YYYYMMDD
}

Usage

var d = new Date();
// Tue Jul 28 2015 15:02:53 GMT+0200 (W. Europe Daylight Time)
console.log(d.IsoNum(8));  // "20150728"
console.log(d.IsoNum(12)); // "201507281502"
console.log(d.IsoNum());   // "20150728150253272"

Solution 35 - Javascript

Native Javascript:

new Date().toLocaleString('zu-ZA').slice(0,10).replace(/-/g,'');

Solution 36 - Javascript

Sure, you can build a specific function for each variation of date string representations. If you consider international date formats you wind up with dozens of specific functions with rediculous names and hard to distinguish.

There is no reasonable function that matches all formats, but there is a reasonable function composition that does:

const pipe2 = f => g => x =>
  g(f(x));

const pipe3 = f => g => h => x =>
  h(g(f(x)));

const invoke = (method, ...args) => o =>
  o[method] (...args);

const padl = (c, n) => s =>
  c.repeat(n)
    .concat(s)
    .slice(-n);

const inc = n => n + 1;

// generic format date function

const formatDate = stor => (...args) => date =>
  args.map(f => f(date))
    .join(stor);

// MAIN

const toYYYYMMDD = formatDate("") (
  invoke("getFullYear"),
  pipe3(invoke("getMonth")) (inc) (padl("0", 2)),
  pipe2(invoke("getDate")) (padl("0", 2)));

console.log(toYYYYMMDD(new Date()));

Yes, this is a lot of code. But you can express literally every string date representation by simply changing the function arguments passed to the higher order function formatDate. Everything is explicit and declarative i.e., you can almost read what's happening.

Solution 37 - Javascript

A lot of answers here use the toisostring function. This function converts the time to zulu time before outputting, which may cause issues.

function datestring(time) {
    return new Date(time.getTime() - time.getTimezoneOffset()*60000).toISOString().slice(0,10).replace(/-/g,"")
}

mydate = new Date("2018-05-03")
console.log(datestring(mydate))

The datestring function fixes the timezone issue, or even better you can avoid the whole issue by working in zulu time:

mydate = new Date("2018-05-03Z")
// mydate = new Date(Date.UTC(2018,5,3))
console.log(mydate.toISOString().slice(0,10).replace(/-/g,""))

Solution 38 - Javascript

Here is a little improvement to the answer from https://stackoverflow.com/users/318563/o-o

Date.prototype.ddmmyyyy = function(delimiter) {
    var yyyy = this.getFullYear().toString();
    var mm = (this.getMonth()+1).toString(); // getMonth() is zero-based
    var dd  = this.getDate().toString();
    return (dd[1]?dd:"0"+dd[0]) + delimiter + (mm[1]?mm:"0"+mm[0]) + delimiter +yyyy  ; // padding
};

Hope to be helpfull for anyone!

:)

Solution 39 - Javascript

Try this:

function showdate(){

var a = new Date();
var b = a.getFullYear();
var c = a.getMonth();
(++c < 10)? c = "0" + c : c;
var d = a.getDate();
(d < 10)? d = "0" + d : d;
var final = b + "-" + c + "-" + d; 

return final;

	
} 

document.getElementById("todays_date").innerHTML = showdate();

Solution 40 - Javascript

this post helped me to write this helper, so I share it in case some one is looking for this solution, it supports all variations of yyyy, mm, dd

Date.prototype.formattedDate = function (pattern) {
    formattedDate = pattern.replace('yyyy', this.getFullYear().toString());
    var mm = (this.getMonth() + 1).toString(); // getMonth() is zero-based
    mm = mm.length > 1 ? mm : '0' + mm;
    formattedDate = formattedDate.replace('mm', mm);
    var dd = this.getDate().toString();
    dd = dd.length > 1 ? dd : '0' + dd;
    formattedDate = formattedDate.replace('dd', dd);
    return formattedDate;
};

d = new Date();
pattern = 'yyyymmdd';  // 20150813
d.formattedDate(pattern);

pattern = 'yyyy-mm-dd';
d.formattedDate(pattern); // 2015-08-13

Solution 41 - Javascript

Date.js has a lot of helpful date parsing methods.

require("datejs")

(new Date()).toString("yyyyMMdd")

Solution 42 - Javascript

I try to write a simple library for manipulating JavaScript date object. You can try this.

var dateString = timeSolver.getString(date, "YYYYMMDD")

Libarary here: https://github.com/sean1093/timeSolver

Solution 43 - Javascript

Nice, and easy:

	var date = new Date();
	var yyyy = date.getFullYear();
	var mm = date.getMonth() + 1; // getMonth() is zero-based
	if (mm < 10) mm='0'+mm;
	var dd = date.getDate();
	if (dd < 10) dd='0'+dd;
	/*date.yyyymmdd();*/
	
	console.log('test - '+yyyy+'-'+mm+'-'+dd);

Solution 44 - Javascript

The @o-o solution doesn't work in my case. My solution is the following:

Date.prototype.yyyymmdd = function() {
  var mm = this.getMonth() + 1; // getMonth() is zero-based
  var dd = this.getDate();
  var ret = [this.getFullYear(), (mm<10)?'0':'', mm, (dd<10)?'0':'', dd].join('');

  return ret; // padding
};

Solution 45 - Javascript

To get the local date, in a YYYYMMDD format, im using:

var todayDate = (new Date()).toLocaleString('en-GB').slice(0,10).split("\/").reverse().join("");

Solution 46 - Javascript

You can create yourself function as below

function toString(o, regex) {
    try {
        if (!o) return '';
        if (typeof o.getMonth === 'function' && !!regex) {
            let splitChar = regex.indexOf('/') > -1 ? '/' : regex.indexOf('-') > -1 ? '-' : regex.indexOf('.') > -1 ? '.' : '';
            let dateSeparate = regex.split(splitChar);
            let result = '';
            for (let item of dateSeparate) {
                let val = '';
                switch (item) {
                    case 'd':
                        val = o.getDate();
                        break;
                    case 'dd':
                        val = this.date2Char(o.getDate());
                        break;
                    case 'M':
                        val = o.getMonth() + 1;
                        break;
                    case 'MM':
                        val = this.date2Char(o.getMonth() + 1);
                        break;
                    case 'yyyy':
                        val = o.getFullYear();
                        break;
                    case 'yy':
                        val = this.date2Char(o.getFullYear());
                        break;
                    default:
                        break;
                }
                result += val + splitChar;
            }
            return result.substring(0, result.length - 1);
        } else {
            return o.toString();
        }
    } catch(ex) { return ''; }
}

function concatDateToString(args) {
    if (!args.length) return '';
    let result = '';
    for (let i = 1; i < args.length; i++) {
        result += args[i] + args[0];
    }
    return result.substring(0, result.length - 1);
}

function date2Char(d){
    return this.rightString('0' + d);
}

function rightString(o) {
    return o.substr(o.length - 2);
}

Used:

var a = new Date();
console.log('dd/MM/yyyy: ' + toString(a, 'dd/MM/yyyy'));
console.log('MM/dd/yyyy: ' + toString(a, 'MM/dd/yyyy'));
console.log('dd/MM/yy: ' + toString(a, 'dd/MM/yy'));
console.log('MM/dd/yy: ' + toString(a, 'MM/dd/yy'));

Solution 47 - Javascript

I hope this function will be useful

function formatDate(dDate,sMode){		
		var today = dDate;
		var dd = today.getDate();
		var mm = today.getMonth()+1; //January is 0!
		var yyyy = today.getFullYear();
		if(dd<10) {
		    dd = '0'+dd
		} 
		if(mm<10) {
		    mm = '0'+mm
		} 
		if (sMode+""==""){
			sMode = "dd/mm/yyyy";
		}
		if (sMode == "yyyy-mm-dd"){
			return  yyyy + "-" + mm + "-" + dd + "";
		}
		if (sMode == "dd/mm/yyyy"){
			return  dd + "/" + mm + "/" + yyyy;
		}
		
	}

Solution 48 - Javascript

Here's a compact little function that's easy to read and avoids local variables, which can be time-sinks in JavaScript. I don't use prototypes to alter standard modules, because it pollutes the namespace and can lead to code that doesn't do what you think it should.

The main function has a stupid name, but it gets the idea across.

function dateToYYYYMMDDhhmmss(date) {
    function pad(num) {
        num = num + '';
        return num.length < 2 ? '0' + num : num;
    }
    return date.getFullYear() + '/' +
        pad(date.getMonth() + 1) + '/' +
        pad(date.getDate()) + ' ' +
        pad(date.getHours()) + ':' +
        pad(date.getMinutes()) + ':' +
        pad(date.getSeconds());
}

Solution 49 - Javascript

var dateDisplay = new Date( 2016-11-09 05:27:00 UTC );
dateDisplay = dateDisplay.toString()
var arr = (dateDisplay.split(' '))
var date_String =  arr[0]+','+arr[1]+' '+arr[2]+' '+arr[3]+','+arr[4]

this will show string like Wed,Nov 09 2016,10:57:00

Solution 50 - Javascript

<pre>Date.prototype.getFromFormat = function(format) {
    var yyyy = this.getFullYear().toString();
    format = format.replace(/yyyy/g, yyyy)
    var mm = (this.getMonth()+1).toString(); 
    format = format.replace(/mm/g, (mm[1]?mm:"0"+mm[0]));
    var dd  = this.getDate().toString();
    format = format.replace(/dd/g, (dd[1]?dd:"0"+dd[0]));
    var hh = this.getHours().toString();
    format = format.replace(/hh/g, (hh[1]?hh:"0"+hh[0]));
    var ii = this.getMinutes().toString();
    format = format.replace(/ii/g, (ii[1]?ii:"0"+ii[0]));
    var ss  = this.getSeconds().toString();
    format = format.replace(/ss/g, (ss[1]?ss:"0"+ss[0]));
    var ampm = (hh >= 12) ? "PM" : "AM";
    format = format.replace(/ampm/g, (ampm[1]?ampm:"0"+ampm[0]));
    return format;
};
var time_var = $('#899_TIME');
var myVar = setInterval(myTimer, 1000);
function myTimer() {
    var d = new Date(); 
    var date = d.getFromFormat('dd-mm-yyyy hh:ii:ss:ampm');
    time_var.text(date);
    
} </pre>

use the code and get the output like **26-07-2017 12:29:34:PM**

check the below link for your reference
 
https://parthiban037.wordpress.com/2017/07/26/date-and-time-format-in-oracle-apex-using-javascript/ 

Solution 51 - Javascript

Why you don't use jQuery?

In your page just download/import the file:

<script src="dateFormat.min.js"></script>

And where you want to format the date:

$.format.date(aDate, 'yyyyMMdd');

You have more details/examples here: https://www.npmjs.com/package/jquery-dateformat

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionIVR AvengerView Question on Stackoverflow
Solution 1 - Javascripto-oView Answer on Stackoverflow
Solution 2 - JavascriptPierre GuilbertView Answer on Stackoverflow
Solution 3 - JavascriptRamzi SAYAGHView Answer on Stackoverflow
Solution 4 - JavascriptH6.View Answer on Stackoverflow
Solution 5 - JavascriptgongqjView Answer on Stackoverflow
Solution 6 - JavascriptBrian PowellView Answer on Stackoverflow
Solution 7 - JavascriptNLemayView Answer on Stackoverflow
Solution 8 - JavascriptDarren GriffithView Answer on Stackoverflow
Solution 9 - JavascriptEric HerlitzView Answer on Stackoverflow
Solution 10 - Javascriptalfredo-fredoView Answer on Stackoverflow
Solution 11 - JavascriptDormouseView Answer on Stackoverflow
Solution 12 - JavascriptKusView Answer on Stackoverflow
Solution 13 - JavascripttrincotView Answer on Stackoverflow
Solution 14 - JavascriptTomas ŠivickasView Answer on Stackoverflow
Solution 15 - JavascriptMilkncookiezView Answer on Stackoverflow
Solution 16 - JavascriptMuhammad AhsanView Answer on Stackoverflow
Solution 17 - JavascriptKamil KiełczewskiView Answer on Stackoverflow
Solution 18 - JavascriptStrelokView Answer on Stackoverflow
Solution 19 - JavascriptHero QuView Answer on Stackoverflow
Solution 20 - JavascriptNoobTWView Answer on Stackoverflow
Solution 21 - JavascriptyajulivView Answer on Stackoverflow
Solution 22 - JavascriptTom TomView Answer on Stackoverflow
Solution 23 - JavascriptanmmlView Answer on Stackoverflow
Solution 24 - JavascriptManohar Reddy PoreddyView Answer on Stackoverflow
Solution 25 - JavascriptChawathe Vipul SView Answer on Stackoverflow
Solution 26 - JavascriptMyrionSC2View Answer on Stackoverflow
Solution 27 - JavascriptOren_HView Answer on Stackoverflow
Solution 28 - JavascriptOgglasView Answer on Stackoverflow
Solution 29 - JavascriptandershView Answer on Stackoverflow
Solution 30 - JavascriptsarinView Answer on Stackoverflow
Solution 31 - JavascriptEnamView Answer on Stackoverflow
Solution 32 - JavascriptKodie GranthamView Answer on Stackoverflow
Solution 33 - JavascriptTamir NakarView Answer on Stackoverflow
Solution 34 - JavascriptchriskellyView Answer on Stackoverflow
Solution 35 - JavascriptLonnie BestView Answer on Stackoverflow
Solution 36 - Javascriptuser10675354View Answer on Stackoverflow
Solution 37 - JavascriptKristian KView Answer on Stackoverflow
Solution 38 - JavascriptIsmael TerrenoView Answer on Stackoverflow
Solution 39 - JavascriptDevin GrayView Answer on Stackoverflow
Solution 40 - JavascripttalsibonyView Answer on Stackoverflow
Solution 41 - JavascriptTan WangView Answer on Stackoverflow
Solution 42 - Javascriptsean1093View Answer on Stackoverflow
Solution 43 - Javascriptuser6750900View Answer on Stackoverflow
Solution 44 - JavascriptfiorentinoingView Answer on Stackoverflow
Solution 45 - JavascriptBoaz SaragossiView Answer on Stackoverflow
Solution 46 - JavascriptTrungView Answer on Stackoverflow
Solution 47 - JavascriptMatias OsmeriniView Answer on Stackoverflow
Solution 48 - JavascriptAaron EndelmanView Answer on Stackoverflow
Solution 49 - Javascriptsiddhant sankheView Answer on Stackoverflow
Solution 50 - JavascriptParthiban Oracle ApexView Answer on Stackoverflow
Solution 51 - JavascriptFrancisco MView Answer on Stackoverflow