<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Private: Code &#38; Script Snippet &#187; JAVASCRIPT</title>
	<atom:link href="http://dev.kratik.net/index.php/category/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://dev.kratik.net</link>
	<description>Every thing you imagin, study it - know it - use it</description>
	<lastBuildDate>Thu, 24 Jun 2010 08:30:01 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Add, remove elements from javascript array</title>
		<link>http://dev.kratik.net/index.php/2010/04/24/add-remove-elements-from-javascript-array/</link>
		<comments>http://dev.kratik.net/index.php/2010/04/24/add-remove-elements-from-javascript-array/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 09:57:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev.kratik.net/?p=877</guid>
		<description><![CDATA[<p>var arr = [1,2,3];</p>
<p>arr.push(4); //Adds new elements to the end of an array, and returns the new length, result arr = [1,2,3,4];
arr.pop(); //Removes the last element of an array, and returns that element, result arr = [1,2];
arr.length = 0; // remove all element</p>
]]></description>
			<content:encoded><![CDATA[<p>var arr = [1,2,3];</p>
<p>arr.push(4); //Adds new elements to the end of an array, and returns the new length, result arr = [1,2,3,4];<br />
arr.pop(); //Removes the last element of an array, and returns that element, result arr = [1,2];<br />
arr.length = 0; // <strong><span style="color: #ff0000;">remove all element</span></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2010/04/24/add-remove-elements-from-javascript-array/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Set dropdownlist</title>
		<link>http://dev.kratik.net/index.php/2010/03/15/set-dropdownlist/</link>
		<comments>http://dev.kratik.net/index.php/2010/03/15/set-dropdownlist/#comments</comments>
		<pubDate>Mon, 15 Mar 2010 10:56:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev.kratik.net/?p=874</guid>
		<description><![CDATA[<p>function setDropDownList(elementRef, valueToSetTo)
{
    var isFound = false;</p>
<p>    for (var i = 0; i < elementRef.options.length; i++)
    {
        if (elementRef.options[i].value == valueToSetTo)
        {
           [...]]]></description>
			<content:encoded><![CDATA[<p>function setDropDownList(elementRef, valueToSetTo)<br />
{<br />
    var isFound = false;</p>
<p>    for (var i = 0; i < elementRef.options.length; i++)<br />
    {<br />
        if (elementRef.options[i].value == valueToSetTo)<br />
        {<br />
            elementRef.options[i].selected = true;<br />
            isFound = true;<br />
        }<br />
    }</p>
<p>    if (isFound == false)<br />
        elementRef.options[0].selected = true;</p>
<p>}</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2010/03/15/set-dropdownlist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>String.Format() In JavaScript like C#</title>
		<link>http://dev.kratik.net/index.php/2010/03/15/string-format-in-javascript-like-c/</link>
		<comments>http://dev.kratik.net/index.php/2010/03/15/string-format-in-javascript-like-c/#comments</comments>
		<pubDate>Mon, 15 Mar 2010 10:47:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev.kratik.net/?p=868</guid>
		<description><![CDATA[<p>function StringFormat(str)
{</p>
<p>    for (i = 1; i < arguments.length; i++)
    {
        str = str.replace(&#8217;{&#8217; + (i &#8211; 1) + &#8216;}&#8217;, arguments[i]);
    }
    return str;
}</p>
<p>example using:
var greeting = format(‘Hello {0} &#038; {1} ‘, ‘John’, ‘Jane’);</p>
<p>ref: http://xneuron.wordpress.com/2006/09/29/stringformat-in-javascript-as-in-c/</p>
]]></description>
			<content:encoded><![CDATA[<p>function StringFormat(str)<br />
{</p>
<p>    for (i = 1; i < arguments.length; i++)<br />
    {<br />
        str = str.replace(&#8217;{&#8217; + (i &#8211; 1) + &#8216;}&#8217;, arguments[i]);<br />
    }<br />
    return str;<br />
}</p>
<p>example using:<br />
var greeting = format(‘Hello {0} &#038; {1} ‘, ‘John’, ‘Jane’);</p>
<p>ref: http://xneuron.wordpress.com/2006/09/29/stringformat-in-javascript-as-in-c/</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2010/03/15/string-format-in-javascript-like-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>javascript get client ID by endswith string</title>
		<link>http://dev.kratik.net/index.php/2010/03/13/javascript-get-client-id-by-endswith-string/</link>
		<comments>http://dev.kratik.net/index.php/2010/03/13/javascript-get-client-id-by-endswith-string/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 08:07:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev.kratik.net/?p=866</guid>
		<description><![CDATA[<p>String.prototype.trim = function()
{ return (this.replace(/^[\s\xA0]+/, &#8220;&#8221;).replace(/[\s\xA0]+$/, &#8220;&#8221;)) }</p>
<p>String.prototype.endsWith = function(str)
{ return (this.match(str + &#8220;$&#8221;) == str) }</p>
<p>String.prototype.startsWith = function(str)
{ return (this.match(&#8221;^&#8221; + str) == str) }</p>
<p>function getClientIdByEndsWith(strid)
{
    var count = document.forms[0];
    var i = 0;
    var eleName;
    var found = false;
   [...]]]></description>
			<content:encoded><![CDATA[<p>String.prototype.trim = function()<br />
{ return (this.replace(/^[\s\xA0]+/, &#8220;&#8221;).replace(/[\s\xA0]+$/, &#8220;&#8221;)) }</p>
<p>String.prototype.endsWith = function(str)<br />
{ return (this.match(str + &#8220;$&#8221;) == str) }</p>
<p>String.prototype.startsWith = function(str)<br />
{ return (this.match(&#8221;^&#8221; + str) == str) }</p>
<p>function getClientIdByEndsWith(strid)<br />
{<br />
    var count = document.forms[0];<br />
    var i = 0;<br />
    var eleName;<br />
    var found = false;<br />
    for (i = 0; i < count.length; i++)<br />
    {<br />
        eleName = document.forms[0].elements[i].id; //forms['aspnetForm']<br />
        if (eleName.endsWith(strid))<br />
        {<br />
            found = true;<br />
            break;<br />
        }<br />
    }<br />
    if (found == false)<br />
    {<br />
        return null;<br />
    }<br />
    else<br />
    {<br />
        return document.getElementById(eleName);<br />
    }<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2010/03/13/javascript-get-client-id-by-endswith-string/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firebug on google chrome</title>
		<link>http://dev.kratik.net/index.php/2010/03/12/firebug-on-google-chrome/</link>
		<comments>http://dev.kratik.net/index.php/2010/03/12/firebug-on-google-chrome/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 08:39:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS+XHTML]]></category>
		<category><![CDATA[CSS-xhtml]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[design]]></category>

		<guid isPermaLink="false">http://dev.kratik.net/?p=862</guid>
		<description><![CDATA[
</p>
<p>+</p>
<p></p>
<p>Compatible with all major browsers: IE6+, Firefox, Opera, Safari and  Chrome</p>
<p>ref: http://getfirebug.com/releases/lite/chrome/
]]></description>
			<content:encoded><![CDATA[<div>
<img style="height: 250px; width: 250px;" src="http://www.shore.com/commentary/weblogs/uploaded_images/google-chrome-logo-711569.jpg" alt="" /></p>
<p>+</p>
<p><img src="http://getfirebug.com/img/firebug-large.png" alt="" /></p>
<p>Compatible with all major browsers: IE6+, Firefox, Opera, Safari and  <span style="color: #ff0000;">Chrome</span></p>
<p>ref: <a href="http://getfirebug.com/releases/lite/chrome/">http://getfirebug.com/releases/lite/chrome/</a></div>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2010/03/12/firebug-on-google-chrome/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Call webservice from javascript</title>
		<link>http://dev.kratik.net/index.php/2009/10/11/call-webservice-from-javascript/</link>
		<comments>http://dev.kratik.net/index.php/2009/10/11/call-webservice-from-javascript/#comments</comments>
		<pubDate>Sun, 11 Oct 2009 17:13:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev1.wordpress.com/?p=647</guid>
		<description><![CDATA[<p>1.  VS 2005  &#8211; create new website with ASP.NET Ajax-Enabled Website , then create   WebService.asmx</p>
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Script.Services;
/// &#60;summary&#62;
/// Summary description for WebService
/// &#60;/summary&#62;
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]  // &#60;== [System.Web.Script.Services.ScriptService] 
public class WebService : System.Web.Services.WebService {</p>
<p>public WebService () {
//Uncomment the following line if using designed components
//InitializeComponent(); 
 }[WebMethod]</p>
<p>public string HelloWorld() [...]]]></description>
			<content:encoded><![CDATA[<p>1.  VS 2005  &#8211; create new website with ASP.NET Ajax-Enabled Website , then create   WebService.asmx</p>
<div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color:#0000FF;">using</span><span style="color:#000000;"> System;<br />
</span><span style="color:#0000FF;">using</span><span style="color:#000000;"> System.Web;<br />
</span><span style="color:#0000FF;">using</span><span style="color:#000000;"> System.Collections;<br />
</span><span style="color:#0000FF;">using</span><span style="color:#000000;"> System.Web.Services;<br />
</span><span style="color:#0000FF;">using</span><span style="color:#000000;"> System.Web.Services.Protocols;<br />
</span><span style="color:#0000FF;">using</span><span style="color:#000000;"> System.Web.Script.Services;<br />
</span><span style="color:#808080;">///</span><span style="color:#008000;"> </span><span style="color:#808080;">&lt;summary&gt;</span><span style="color:#008000;"><br />
</span><span style="color:#808080;">///</span><span style="color:#008000;"> Summary description for WebService<br />
</span><span style="color:#808080;">///</span><span style="color:#008000;"> </span><span style="color:#808080;">&lt;/summary&gt;</span><span style="color:#808080;"><br />
</span><span style="color:#000000;">[WebService(Namespace </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#800000;">"</span><span style="color:#800000;">http://tempuri.org/</span><span style="color:#800000;">"</span><span style="color:#000000;">)]<br />
[WebServiceBinding(ConformsTo </span><span style="color:#000000;">=</span><span style="color:#000000;"> WsiProfiles.BasicProfile1_1)]<br />
<span style="color:#ff0000;">[<strong>ScriptService]  // &lt;== </strong></span></span><span style="text-decoration:underline;"><span style="color:#ff0000;">[System.Web.Script.Services.ScriptService]</span></span><span style="color:#000000;"><span style="color:#ff0000;"><strong> </strong></span><br />
</span><span style="color:#0000FF;">public</span><span style="color:#000000;"> </span><span style="color:#0000FF;">class</span><span style="color:#000000;"> WebService : System.Web.Services.WebService {</p>
<p></span><span style="color:#0000FF;">public</span><span style="color:#000000;"> WebService () {<br />
</span><span style="color:#008000;">//</span><span style="color:#008000;">Uncomment the following line if using designed components<br />
</span><span style="color:#008000;">//</span><span style="color:#008000;">InitializeComponent(); </span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> }[WebMethod]</p>
<p></span><span style="color:#0000FF;">public</span><span style="color:#000000;"> </span><span style="color:#0000FF;">string</span><span style="color:#000000;"> HelloWorld() {<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#800000;">&#8220;</span><span style="color:#800000;">Hello World</span><span style="color:#800000;">&#8220;</span><span style="color:#000000;">;<br />
}[WebMethod]</p>
<p></span><span style="color:#0000FF;">public</span><span style="color:#000000;"> </span><span style="color:#0000FF;">string</span><span style="color:#000000;"> GetDateTimeFromServer()<br />
{<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> DateTime.Now.ToString();<br />
}<br />
}</span></div>
<div>==============================================</div>
<div><span style="color:#000000;">2. Create JScript.js</p>
<p></span></div>
<div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color:#008000;">//</span><span style="color:#008000;"> JScript File</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">function</span><span style="color:#000000;"> GetDateTimeFromServer()<br />
{<br />
WebService.GetDateTimeFromServer(OnSuccess, OnFail);<br />
}</p>
<p></span><span style="color:#0000FF;">function</span><span style="color:#000000;"> OnSuccess(e){<br />
document.getElementById(</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">LabelDateTime</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">).innerHTML </span><span style="color:#000000;">=</span><span style="color:#000000;"> e;<br />
}</p>
<p></span><span style="color:#0000FF;">function</span><span style="color:#000000;"> OnFail(e){<br />
document.getElementById(</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">LabelDateTime</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">).innerHTML </span><span style="color:#000000;">=</span><span style="color:#000000;"> e;<br />
}</span></div>
<div><span style="color:#000000;">=================================================</span></div>
<div><span style="color:#000000;">3. Create Default.aspx</span></div>
<div><span style="color:#000000;"><br />
</span></div>
<div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">head </span><span style="color:#FF0000;">runat</span><span style="color:#0000FF;">=&#8221;server&#8221;</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">title</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;">Untitled Page</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">title</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">script </span><span style="color:#FF0000;">src</span><span style="color:#0000FF;">=&#8221;JScript.js&#8221;</span><span style="color:#FF0000;"> type</span><span style="color:#0000FF;">=&#8221;text/javascript&#8221;</span><span style="color:#0000FF;">&gt;&lt;/</span><span style="color:#800000;">script</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">head</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">body</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">form </span><span style="color:#FF0000;">id</span><span style="color:#0000FF;">=&#8221;form1&#8243;</span><span style="color:#FF0000;"> runat</span><span style="color:#0000FF;">=&#8221;server&#8221;</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">div</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">asp:ScriptManager </span><span style="color:#FF0000;">ID</span><span style="color:#0000FF;">=&#8221;ScriptManager1&#8243;</span><span style="color:#FF0000;"> runat</span><span style="color:#0000FF;">=&#8221;server&#8221;</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">Services</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">asp:ServiceReference </span><span style="color:#FF0000;">Path</span><span style="color:#0000FF;">=&#8221;WebService.asmx&#8221;</span><span style="color:#FF0000;"> </span><span style="color:#0000FF;">/&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">Services</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">asp:ScriptManager</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">br </span><span style="color:#0000FF;">/&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">button </span><span style="color:#FF0000;">onclick</span><span style="color:#0000FF;">=&#8221;GetDateTimeFromServer();&#8221;</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
&#8211; Show server time &#8211;<br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">button</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">br </span><span style="color:#0000FF;">/&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;</span><span style="color:#800000;">label </span><span style="color:#FF0000;">id</span><span style="color:#0000FF;">=&#8221;LabelDateTime&#8221;</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">label</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">div</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">form</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">body</span><span style="color:#0000FF;">&gt;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">&lt;/</span><span style="color:#800000;">html</span><span style="color:#0000FF;">&gt;</span></div>
<div><span style="color:#0000FF;">===============================================<br />
</span></div>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2009/10/11/call-webservice-from-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript dateTime function</title>
		<link>http://dev.kratik.net/index.php/2009/10/09/javascript-datetime-function/</link>
		<comments>http://dev.kratik.net/index.php/2009/10/09/javascript-datetime-function/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 04:15:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev1.wordpress.com/?p=635</guid>
		<description><![CDATA[&#60;!&#8211; Paste this code into an external JavaScript file named: dateFormat.js &#8211;&#62;</p>
<p>/* This script and many more are available free online at
The JavaScript Source :: http://javascript.internet.com
Created by: Oded Arbel :: http://geek.co.il/wp/ */</p>
<p>/**
* Extension of the JavaScript internal Date object to allow various formatting of
* date/time values.
* This implementation was designed to be compliant with the [...]]]></description>
			<content:encoded><![CDATA[<div><span style="color:#000000;">&lt;!&#8211;</span><span style="color:#000000;"> Paste </span><span style="color:#0000FF;">this</span><span style="color:#000000;"> code into an external JavaScript file named: dateFormat.js </span><span style="color:#000000;">&#8211;&gt;</span><span style="color:#000000;"></p>
<p></span><span style="color:#008000;">/*</span><span style="color:#008000;"> This script and many more are available free online at<br />
The JavaScript Source :: http://javascript.internet.com<br />
Created by: Oded Arbel :: http://geek.co.il/wp/ </span><span style="color:#008000;">*/</span><span style="color:#000000;"></p>
<p></span><span style="color:#008000;">/*</span><span style="color:#008000;">*<br />
* Extension of the JavaScript internal Date object to allow various formatting of<br />
* date/time values.<br />
* This implementation was designed to be compliant with the formatting of the<br />
* Java class library&#8217;s SimpleDateFormat object, with the addition of the &#8216;x&#8217; format<br />
* option to show number of seconds since the epoch (1/1/1970 00:00).<br />
*<br />
* See http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html for<br />
* full details.<br />
*<br />
* (c) Copyright 2006 &#8211; Oded Arbel<br />
* (c) Portions copyright 2006 &#8211; Jack Slocum<br />
</span><span style="color:#008000;">*/</span><span style="color:#000000;"></p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> Static definition of Month names</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.MONTH_NAMES </span><span style="color:#000000;">=</span><span style="color:#000000;"> [<br />
</span><span style="color:#000000;">"</span><span style="color:#000000;">January</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">February</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">March</span><span style="color:#000000;">"</span><span style="color:#000000;">,<br />
</span><span style="color:#000000;">"</span><span style="color:#000000;">April</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">May</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">June</span><span style="color:#000000;">"</span><span style="color:#000000;">,<br />
</span><span style="color:#000000;">"</span><span style="color:#000000;">July</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">August</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">September</span><span style="color:#000000;">"</span><span style="color:#000000;">,<br />
</span><span style="color:#000000;">"</span><span style="color:#000000;">October</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">November</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">December</span><span style="color:#000000;">"</span><span style="color:#000000;"> ];</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> Static definition of weekday names</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.WEEKDAY_NAMES </span><span style="color:#000000;">=</span><span style="color:#000000;"> [<br />
</span><span style="color:#000000;">"</span><span style="color:#000000;">Sunday</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">Monday</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">Tuesday</span><span style="color:#000000;">"</span><span style="color:#000000;">,<br />
</span><span style="color:#000000;">"</span><span style="color:#000000;">Wednesday</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">Thursday</span><span style="color:#000000;">"</span><span style="color:#000000;">, </span><span style="color:#000000;">"</span><span style="color:#000000;">Friday</span><span style="color:#000000;">"</span><span style="color:#000000;">,<br />
</span><span style="color:#000000;">"</span><span style="color:#000000;">Saturday</span><span style="color:#000000;">"</span><span style="color:#000000;"> ];</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> clone the current date object and return a different object with identical value</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.clone </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> () {<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">new</span><span style="color:#000000;"> Date(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getTime());<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> clear the time information from this date and return it</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.clearTime </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> () {<br />
</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.setHours(</span><span style="color:#000000;">0</span><span style="color:#000000;">); </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.setMinutes(</span><span style="color:#000000;">0</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.setSeconds(</span><span style="color:#000000;">0</span><span style="color:#000000;">); </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.setMilliseconds(</span><span style="color:#000000;">0</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">;<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> return the last day of this month</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.lastDay </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> () {<br />
</span><span style="color:#0000FF;">var</span><span style="color:#000000;"> tempDate </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.clone();<br />
tempDate.setMonth(tempDate.getMonth()</span><span style="color:#000000;">+</span><span style="color:#000000;">1</span><span style="color:#000000;">);<br />
tempDate.setDate(</span><span style="color:#000000;">0</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> tempDate.getDate();<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> return number of days since start of year</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.getYearDay </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> () {<br />
</span><span style="color:#0000FF;">var</span><span style="color:#000000;"> today </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">new</span><span style="color:#000000;"> Date(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">);<br />
today.setHours(</span><span style="color:#000000;">0</span><span style="color:#000000;">); today.setMinutes(</span><span style="color:#000000;">0</span><span style="color:#000000;">); today.setSeconds(</span><span style="color:#000000;">0</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">var</span><span style="color:#000000;"> tempDate </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">new</span><span style="color:#000000;"> Date(today);<br />
</span><span style="color:#008000;">//</span><span style="color:#008000;"> set start of year</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> tempDate.setDate(</span><span style="color:#000000;">1</span><span style="color:#000000;">);<br />
tempDate.setMonth(</span><span style="color:#000000;">0</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Math.round(<br />
(today.getTime() </span><span style="color:#000000;">-</span><span style="color:#000000;"> tempDate.getTime())<br />
</span><span style="color:#000000;">/</span><span style="color:#000000;"> </span><span style="color:#000000;">86400</span><span style="color:#000000;"> </span><span style="color:#000000;">/</span><span style="color:#000000;"> </span><span style="color:#000000;">1000</span><span style="color:#000000;">) </span><span style="color:#000000;">+</span><span style="color:#000000;"> </span><span style="color:#000000;">1</span><span style="color:#000000;">; </span><span style="color:#008000;">//</span><span style="color:#008000;"> Jan/1 is day 1</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> add format() to Date</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.format </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;">(formatString) {<br />
</span><span style="color:#0000FF;">var</span><span style="color:#000000;"> out </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">new</span><span style="color:#000000;"> String();<br />
</span><span style="color:#0000FF;">var</span><span style="color:#000000;"> token </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8220;&#8221;</span><span style="color:#000000;"><br />
</span><span style="color:#0000FF;">for</span><span style="color:#000000;"> (</span><span style="color:#0000FF;">var</span><span style="color:#000000;"> i </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#000000;">0</span><span style="color:#000000;">; i </span><span style="color:#000000;">&lt;</span><span style="color:#000000;"> formatString.length; i</span><span style="color:#000000;">++</span><span style="color:#000000;">) {<br />
</span><span style="color:#0000FF;">if</span><span style="color:#000000;"> (formatString.charAt(i) </span><span style="color:#000000;">==</span><span style="color:#000000;"> token.charAt(</span><span style="color:#000000;">0</span><span style="color:#000000;">)) {<br />
token </span><span style="color:#000000;">=</span><span style="color:#000000;"> token.concat(formatString.charAt(i));<br />
</span><span style="color:#0000FF;">continue</span><span style="color:#000000;">;<br />
}<br />
out </span><span style="color:#000000;">=</span><span style="color:#000000;"> out.concat(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.convertToken(token));<br />
token </span><span style="color:#000000;">=</span><span style="color:#000000;"> formatString.charAt(i);<br />
}<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> out </span><span style="color:#000000;">+</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.convertToken(token);<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> internal call to map tokens to the date data</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.convertToken </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> (str) {<br />
</span><span style="color:#0000FF;">switch</span><span style="color:#000000;">(str.charAt(</span><span style="color:#000000;">0</span><span style="color:#000000;">)) {<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">y</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set year</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">if</span><span style="color:#000000;"> (str.length </span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;">2</span><span style="color:#000000;">)<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getFullYear();<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getFullYear().toString().substring(</span><span style="color:#000000;">2</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">d</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set date</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getDate(),str.length);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">D</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set day in year</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getYearDay();<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">a</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">:<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getHours() </span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;">11</span><span style="color:#000000;"> </span><span style="color:#000000;">?</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">PM</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;"> : </span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">AM</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">;<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">H</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set hours</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getHours(),str.length);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">h</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">:<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.get12Hours(),str.length);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">m</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set minutes</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getMinutes(),</span><span style="color:#000000;">2</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">s</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set secondes</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getSeconds(),</span><span style="color:#000000;">2</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">S</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set milisecondes</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getMilliseconds(),str.length);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">x</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set epoch time</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getTime();<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">Z</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set time zone</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> (</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getTimezoneOffset() </span><span style="color:#000000;">/</span><span style="color:#000000;"> </span><span style="color:#000000;">60</span><span style="color:#000000;">) </span><span style="color:#000000;">+</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">:</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;"> </span><span style="color:#000000;">+</span><span style="color:#000000;"><br />
Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getTimezoneOffset() </span><span style="color:#000000;">%</span><span style="color:#000000;"> </span><span style="color:#000000;">60</span><span style="color:#000000;">,</span><span style="color:#000000;">2</span><span style="color:#000000;">);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">M</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set month</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">if</span><span style="color:#000000;"> (str.length </span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;">3</span><span style="color:#000000;">) </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getFullMonthName();<br />
</span><span style="color:#0000FF;">if</span><span style="color:#000000;"> (str.length </span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;">2</span><span style="color:#000000;">) </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getShortMonthName();<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.zeroPad(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getMonth()</span><span style="color:#000000;">+</span><span style="color:#000000;">1</span><span style="color:#000000;">,str.length);<br />
</span><span style="color:#0000FF;">case</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">E</span><span style="color:#000000;">&#8216;</span><span style="color:#000000;">: </span><span style="color:#008000;">//</span><span style="color:#008000;"> set dow</span><span style="color:#008000;"><br />
</span><span style="color:#000000;"> </span><span style="color:#0000FF;">if</span><span style="color:#000000;"> (str.length </span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;">3</span><span style="color:#000000;">) </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getDOWName();<br />
</span><span style="color:#0000FF;">if</span><span style="color:#000000;"> (str.length </span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;">1</span><span style="color:#000000;">) </span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getShortDOWName();<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getDay();<br />
</span><span style="color:#0000FF;">default</span><span style="color:#000000;">:<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> str;<br />
}<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> Retreive the month&#8217;s name in english</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.getFullMonthName </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;">() {<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.MONTH_NAMES[</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getMonth()];<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> Retreive the abberviated month name in english</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.getShortMonthName </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;">() {<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.MONTH_NAMES[</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getMonth()].substring(</span><span style="color:#000000;">0</span><span style="color:#000000;">,</span><span style="color:#000000;">3</span><span style="color:#000000;">);<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> Retreive the week day name in english</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.getDOWName </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> () {<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.WEEKDAY_NAMES[</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getDay()];<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> Retreive the abberviated week day name in english</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.getShortDOWName </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> () {<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> Date.WEEKDAY_NAMES[</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getDay()].substring(</span><span style="color:#000000;">0</span><span style="color:#000000;">,</span><span style="color:#000000;">3</span><span style="color:#000000;">);<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> Retreive the hour in a 12 hour clock (without the AM/PM specification)</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.prototype.get12Hours </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;"> () {<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getHours() </span><span style="color:#000000;">==</span><span style="color:#000000;"> </span><span style="color:#000000;">0</span><span style="color:#000000;"> </span><span style="color:#000000;">?</span><span style="color:#000000;"> </span><span style="color:#000000;">12</span><span style="color:#000000;"> :<br />
(</span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getHours() </span><span style="color:#000000;">&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;">12</span><span style="color:#000000;"> </span><span style="color:#000000;">?</span><span style="color:#000000;"> </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getHours() </span><span style="color:#000000;">-</span><span style="color:#000000;"> </span><span style="color:#000000;">12</span><span style="color:#000000;"> : </span><span style="color:#0000FF;">this</span><span style="color:#000000;">.getHours());<br />
}</p>
<p></span><span style="color:#008000;">//</span><span style="color:#008000;"> helper function to add required zero characters to fixed length fields</span><span style="color:#008000;"><br />
</span><span style="color:#000000;">Date.zeroPad </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">function</span><span style="color:#000000;">(num, width) {<br />
num </span><span style="color:#000000;">=</span><span style="color:#000000;"> num.toString();<br />
</span><span style="color:#0000FF;">while</span><span style="color:#000000;"> (num.length </span><span style="color:#000000;">&lt;</span><span style="color:#000000;"> width)<br />
num </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">0</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;"> </span><span style="color:#000000;">+</span><span style="color:#000000;"> num;<br />
</span><span style="color:#0000FF;">return</span><span style="color:#000000;"> num;<br />
}</p>
<p></span><span style="color:#000000;">&lt;!&#8211;</span><span style="color:#000000;"> Paste </span><span style="color:#0000FF;">this</span><span style="color:#000000;"> code into the HEAD section of your HTML document.<br />
You may need to change the path of the file. </span><span style="color:#000000;">&#8211;&gt;</span><span style="color:#000000;"></p>
<p></span><span style="color:#000000;">&lt;</span><span style="color:#000000;">script type</span><span style="color:#000000;">=</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">text/javascript</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;"> src</span><span style="color:#000000;">=</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">dateFormat.js</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">&gt;&lt;/</span><span style="color:#000000;">script</span><span style="color:#000000;">&gt;</span></div>
<div></div>
<div><span style="color:#000000;">ref: </span><a href="http://javascript.internet.com/time-date/date-format.html" target="_blank">http://javascript.internet.com/time-date/date-format.html</a></div>
<div></div>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2009/10/09/javascript-datetime-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using firebug in IE</title>
		<link>http://dev.kratik.net/index.php/2009/07/29/using-firebug-in-ie/</link>
		<comments>http://dev.kratik.net/index.php/2009/07/29/using-firebug-in-ie/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 09:22:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev1.wordpress.com/?p=526</guid>
		<description><![CDATA[<p>add this script in html page</p>
&#60;script type='text/javascript'
        src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'&#62;&#60;/script&#62;
<p>then run
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
]]></description>
			<content:encoded><![CDATA[<p>add this script in html page</p>
<pre>&lt;script type='text/javascript'
        src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'&gt;&lt;/script&gt;</pre>
<p>then run<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2009/07/29/using-firebug-in-ie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript : Ignore Case Array Sort</title>
		<link>http://dev.kratik.net/index.php/2009/06/15/javascript-ignore-case-array-sort/</link>
		<comments>http://dev.kratik.net/index.php/2009/06/15/javascript-ignore-case-array-sort/#comments</comments>
		<pubDate>Mon, 15 Jun 2009 03:59:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev1.wordpress.com/2009/06/15/javascript-ignore-case-array-sort/</guid>
		<description><![CDATA[<p>When you sort an array in Javascript the array gets             sorted into dictionary order. This means that             &#8216;A&#8217; is less than &#8216;a&#8217; and gets sorted       [...]]]></description>
			<content:encoded><![CDATA[<p>When you sort an array in Javascript the array gets             sorted into dictionary order. This means that             &#8216;A&#8217; is less than &#8216;a&#8217; and gets sorted             that way. If your array consists of both uppercase and             lowercase entries then you probably want to sort             alphabetically ignoring the case of the individual             entries instead. We can change the way that the array             sort method works by passing it a parameter identifying             a function that contains the instructions on how to             compare the entries.</p>
<p>To sort an array into order ignoring case add the             following code (into the head section of your page is             probably the most appropriate place):</p>
<div>function charOrdA(a, b){<br />
a = a.toLowerCase(); b = b.toLowerCase();<br />
if (a&gt;b) return 1;<br />
if (a &lt;b) return -1;<br />
return 0; }<br />
function charOrdD(a, b)<br />
a = a.toLowerCase(); b = b.toLowerCase();<br />
if (a&lt;b) return 1;<br />
if (a &gt;b) return -1;<br />
return 0; }</div>
<p>We can now sort the array without the upper and lower             case entries being sorted into different orders. The             following example shows how:</p>
<div>charArray = new             Array(&#8217;c',&#8217;A',&#8217;z',&#8217;f',&#8217;D');<br />
charArray<strong>.sort( charOrdA );</strong><br />
document.write(&#8217;Ascending : &#8216; + charArray +             &#8216;&lt;br /&gt;&#8217;);<br />
charArray<strong>.sort( charOrdD );</strong><br />
document.write(&#8217;Descending : &#8216; + charArray +             &#8216;&lt;br /&gt;&#8217;);</div>
<p><!-- END CONTENT AREA --> <!--/gc--></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2009/06/15/javascript-ignore-case-array-sort/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Short circuit logic operator</title>
		<link>http://dev.kratik.net/index.php/2008/10/03/short-circuit-logic-operator/</link>
		<comments>http://dev.kratik.net/index.php/2008/10/03/short-circuit-logic-operator/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 04:37:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>

		<guid isPermaLink="false">http://dev1.wordpress.com/?p=411</guid>
		<description><![CDATA[ในภาษาโปรแกรมมิ่งที่มีคนใช้กันมากๆเกือบทุกตัว จะต้องมีโอเปอเรเตอร์ในการดำเนินการทางตรรกะแบบลัด ซึ่งมีชื่อว่า Short-Circuit Operator ซึ่งเราสามารถที่จะใช้เจ้าตัว Short-Circuit Operator ให้เป็นประโยชน์ได้
 
ทำได้อย่างไร?
กฏของ Short-Circuit Operator อยู่บนกฏพื้นฐานของ &#38;&#38; และ &#124;&#124; นั้นคือ
สำหรับ &#38;&#38; แล้วถ้ามีตัวใดตัวหนึ่งในนิพจน์เป็นเท็จค่าของนิพจน์ &#38;&#38; จะเป็นเท็จทันที
ตัวอย่างที่แสดงได้ดังต่อไปนี้
Code Sample
bool p = false;
bool q = true;
if (p &#38;&#38; q) // ที่บรรทัดนี้โปรแกรมสามารถสรุปได้ทันที่ว่าเงื่อนไขนี้เป็นเท็จ
   ;        // โดยไม่ต้อง evaluate(คำนวณ)ค่าของ q แต่กลับกันหาก 
            // p เป็น true q ต้องถูก evaluate ค่า

ตัวอย่างในสถานการณ์จริงเช่นเราต้องการ เรียกใช้งาน Method ที่อยู่ใน class
แต่ตัวแปรที่ใช้เก็บ instance ของคลาสนั้น อาจมีค่าเป็น null ได้
เพื่อหลีกเลี่ยง NullException เราจึงต้อง Check ค่าของตัวแปรว่ามีค่าเป็น Null [...]]]></description>
			<content:encoded><![CDATA[<div>ในภาษาโปรแกรมมิ่งที่มีคนใช้กันมากๆเกือบทุกตัว จะต้องมีโอเปอเรเตอร์ในการดำเนินการทางตรรกะแบบลัด ซึ่งมีชื่อว่า <em>Short-Circuit Operator</em> ซึ่งเราสามารถที่จะใช้เจ้าตัว <em>Short-Circuit Operator</em> ให้เป็นประโยชน์ได้</div>
<div> </div>
<div><strong>ทำได้อย่างไร?</strong></div>
<div>กฏของ Short-Circuit Operator อยู่บนกฏพื้นฐานของ &amp;&amp; และ || นั้นคือ</div>
<div>สำหรับ &amp;&amp; แล้วถ้ามีตัวใดตัวหนึ่งในนิพจน์เป็นเท็จค่าของนิพจน์ &amp;&amp; จะเป็นเท็จทันที</div>
<div>ตัวอย่างที่แสดงได้ดังต่อไปนี้<br />
<span style="text-decoration:underline;">Code Sample</span></div>
<div><span style="font-family:Courier New;">bool p = false;</span></div>
<div><span style="font-family:Courier New;">bool q = true;</span></div>
<div><span style="font-family:Courier New;">if (p &amp;&amp; q) // ที่บรรทัดนี้โปรแกรมสามารถสรุปได้ทันที่ว่าเงื่อนไขนี้เป็นเท็จ</span></div>
<div><span style="font-family:Courier New;">   ;        // โดยไม่ต้อง evaluate(คำนวณ)ค่าของ q แต่กลับกันหาก </span></div>
<div><span style="font-family:Courier New;">            // p เป็น true q ต้องถูก evaluate ค่า</span></div>
<div>
ตัวอย่างในสถานการณ์จริงเช่นเราต้องการ เรียกใช้งาน Method ที่อยู่ใน class</div>
<div>แต่ตัวแปรที่ใช้เก็บ instance ของคลาสนั้น อาจมีค่าเป็น null ได้</div>
<div>เพื่อหลีกเลี่ยง NullException เราจึงต้อง Check ค่าของตัวแปรว่ามีค่าเป็น Null หรือไม่ก่อนที่จะใช้งานมัน<br />
เช่น ต้องการตรวจสอบความยาวของ string s</div>
<div>if (s != null &amp;&amp; s.Length == 100) // กรณี s มีค่าเป็น null เราก็ไม่จำเป็นต้องตรวจสอบความยาวอีก</div>
<div>    ; //so something</p>
<p>bitwise หรือ logic operator นั้นจะทำงานได้เร็วกว่าโครงสร้างควบคุมแบบ if(    ) และแน่นอนช่วยเพิ่มประสิทธิภาพให้โปรแกรมของคุณ</p></div>
]]></content:encoded>
			<wfw:commentRss>http://dev.kratik.net/index.php/2008/10/03/short-circuit-logic-operator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
