# Thread: Count number of Sunday from a given date to today

1. Registered User
Join Date
Mar 2011
Posts
3

## Count number of Sunday from a given date to today

Hello

New to the forum and hoping someone can help.
I was familiar with JS but that was many years ago, and I guess the brain cells that held that info have retired.

Does anyone have a way of counting the number of Sundays from a given date to todays date?

For example the given date is 11/27/2010, so how many Sundays from then til today?

Any help would be greatly appreciated.

George

2. Could be something like this:
Code:
```<script type="text/javascript">
// Start extended prototype
Date.prototype.countDays=function(YYYY,MM,DD,D){
var thisDate=new Date(this.getFullYear(),this.getMonth(),this.getDate())
var otherDate=new Date(Number(YYYY),Number(MM)-1,Number(DD))
var startD, endD, howmany=0;
if(thisDate>otherDate){
startD=otherDate;
endD=thisDate;
}
else{
startD=thisDate;
endD=otherDate;
}
while(endD>=startD){
if(startD.getDay()==D){howmany++}
startD.setDate(startD.getDate()+1);
}
this.howmany=howmany;
}
// End extended prototype

var today=new Date();
today.countDays(2010,11,27,0); // Year,Month,Date,Week's Day (0=Sunday, 1=Monday...)
</script>```

3. Registered User
Join Date
Mar 2011
Posts
3
Hey Kor,

Thanks for the reply and code. As I metioned it has been some time since I did any scripting, so your coding is a bit advanced for me right now.

I did fumble my way through and came up with this bit which counts the days, the Sundays, and the working days.

It may not be pretty, but I did it and it works, and I understand it.

Code:
```var gpldt = new Date();
var gplmo = new Date();
var gplyr = new Date();
// GET TODAY DATE	****************
var  dt = gpldt.getDate();
var  mo = gplmo.getMonth();
var  yr = gplyr.getYear();
//**********************************

var  sdt = "10"
var  smo = "0"
var  syr = "2011"

var fullDay = 24*60*60*1000;
var OT1Date =  new Date(syr,smo,sdt);
var todayDate = new Date(yr,mo,dt);
var difDay = Math.floor((todayDate.getTime() - OT1Date.getTime())/(fullDay));
difDay = difDay + 1
var difSun = Math.floor(difDay / 7)
mo = mo+1
var wrkdys = difDay - difSun;

document.write("There are " + difDay + " days between " )
document.write("Todays Date: " + mo+"/"+dt+"/"+yr +"  and the Start Date: 1/10/2011")
document.write('<br />' )
document.write("There are "+difSun+ " Sundays" )
document.write('<br />' )
document.write("There are " + wrkdys + " working days inc Saturdays")
document.write('<br />' )```

4. Originally Posted by bigGPL
I did fumble my way through and came up with this bit which counts the days, the Sundays, and the working days.

It may not be pretty, but I did it and it works, and I understand it.
Well, if it works, it works There are many ways to skin a cat

Regarding my code, it is not a big deal. It is just a way to extend the prototype of a primitive. If you are interested, about the prototype property/object:

http://www.w3schools.com/jsref/jsref_prototype_math.asp
http://www.javascriptkit.com/javatutors/proto.shtml

and about extending the native prototype of some Primitives:
http://phrogz.net/js/classes/Extendi...ndClasses.html