Tutorials to .com

Tutorials to .com » Jsp » Skills » javascript function prototype

javascript function prototype

Print View , by: iSee ,Total views: 19 ,Word Count: 1213 ,Date: Sat, 22 Aug 2009 Time: 4:05 PM

string. length of characters to deal with two Chinese characters
. Tlength



-------------------------------------------------- ------------------------------

<script>
/ *
This following code are designed and writen by Windy_sk <seasonx@163.net>
You can use it freely, but u must held all the copyright items!
* /

/ / Measure the actual length of string
String.prototype.Tlength = function () (var arr = this.match (/ [^ \ x00-\ xff] / ig); return this.length + (arr == null? 0: arr.length);)

/ / String from the left
String.prototype.left = function (num, mode) (if (! / \ D + /. Test (num)) return (this); var str = this.substr (0, num); if (! Mode) return str ; var n = str.Tlength () - str.length; num = num - parseInt (n / 2); return this.substr (0, num);)

/ / String from the right
String.prototype.right = function (num, mode) (if (! / \ D + /. Test (num)) return (this); var str = this.substr (this.length-num); if (! Mode) return str; var n = str.Tlength () - str.length; num = num - parseInt (n / 2); return this.substr (this.length-num);)

/ / String contains
String.prototype.GetCount = function (str, mode) (return eval ( "this.match (/("+ str +") / g "+ (mode?" I ":"")+"). length "); )

/ / String to remove empty characters at both ends
String.prototype.Trim = function () (return this.replace (/ (^ \ s *) | (\ s * $) / g ,"");}
String.prototype.Ltrim = function () (return this.replace (/ (^ \ s *) / g, "");}
String.prototype.Rtrim = function () (return this.replace (/ (\ s * $) / g, "");}

document.write ( " 'aa Salala aa'. Tlength () =" + "aa Salala aa". Tlength ());
document.write ( "<br>");
document.write ( " 'aabbcc'. Tlength () =" + "aabbcc". Tlength ());
document.write ( "<br>");
document.write ( " 'aa Salala aa'. left (4) =" + "aa Salala aa". left (4));
document.write ( "<br>");
document.write ( " 'aa Salala aa'. left (4, true) =" + "aa Salala aa". left (4, true));
document.write ( "<br>");
document.write ( " 'aa Salala aa'. right (4) =" + "aa Salala aa". right (4));
document.write ( "<br>");
document.write ( " 'aa Salala aa'. right (4, true) =" + "aa Salala aa". right (4, true));
document.write ( "<br>");
document.write ( " 'abAcae'. GetCount ( 'a') =" + "abAcae". GetCount ( "a"));
document.write ( "<br>");
document.write ( " 'abAcae'. GetCount ( 'a', true) =" + "abAcae". GetCount ( "a", true));
document.write ( "<br>");
document.write ( " 'abc de'. Ltrim () =" + "abc de". Ltrim ());
document.write ( "<br>");
document.write ( " 'abc de'. Rtrim () =" + "abc de". Rtrim ());
document.write ( "<br>");
document.write ( " 'abc de'. Trim () =" + "abc de". Trim ());
</ script>


Several function again, getCookie (), getQuery (), DateDiff (), DateAdd (), b2s (), original + change



-------------------------------------------------- ------------------------------


function getCookie (mainKey, subKey) (
var reg = new RegExp ("(^|) "+ mainKey +"=([^;]*)(;|$)");
var arr = document.cookie.match (reg);
if (arguments.length == 2) (
if (arr! = null)
return key (subKey, arr [2]);
else
return null;
) Else if (arguments.length == 1) (
if (arr! = null)
return unescape (arr [2]);
else
return null;
)

function key (subKey, findWith) (
var arr, reg = new RegExp ("(^| |&)"+ subKey +"=([^&]*)(&|$)");
var findWith = findWith? findWith: document.cookie;
if (arr = findWith.match (reg))
return unescape (arr [2]);
else
return null;
)
)

function getQuery (name) (
var reg = new RegExp ("(^|&)"+ name +"=([^&]*)(&|$)");
var r = location.search.substr (1). match (reg)
if (r! = null) return unescape (r [2]);
)

function DateAdd (strInterval, NumDay, dtDate) (
var dtTmp = new Date (dtDate);
if (isNaN (dtTmp)) dtTmp = new Date ();
switch (strInterval) (
case "s": return new Date (Date.parse (dtTmp) + (1000 * NumDay));
case "n": return new Date (Date.parse (dtTmp) + (60000 * NumDay));
case "h": return new Date (Date.parse (dtTmp) + (3600000 * NumDay));
case "d": return new Date (Date.parse (dtTmp) + (86400000 * NumDay));
case "w": return new Date (Date.parse (dtTmp) + ((86400000 * 7) * NumDay));
case "m": return new Date (dtTmp.getFullYear (), (dtTmp.getMonth ()) + NumDay, dtTmp.getDate (), dtTmp.getHours (), dtTmp.getMinutes (), dtTmp.getSeconds ());
case "y": return new Date ((dtTmp.getFullYear () + NumDay), dtTmp.getMonth (), dtTmp.getDate (), dtTmp.getHours (), dtTmp.getMinutes (), dtTmp.getSeconds ());
)
)
/ / DateDiff ( "m", "2002/12/1 00:00:00", "2004/12/1 00:00:00")
function DateDiff (strInterval, dtStart, dtEnd) (
var dtStart = new Date (dtStart);
if (isNaN (dtStart)) dtStart = new Date ();
var dtEnd = new Date (dtEnd);
if (isNaN (dtEnd)) dtEnd = new Date ();
switch (strInterval) (
case "s": return parseInt ((dtEnd - dtStart) / 1000);
case "n": return parseInt ((dtEnd - dtStart) / 60000);
case "h": return parseInt ((dtEnd - dtStart) / 3600000);
case "d": return parseInt ((dtEnd - dtStart) / 86400000);
case "w": return parseInt ((dtEnd - dtStart) / (86400000 * 7));
case "m": return (dtEnd.getMonth () +1) + ((dtEnd.getFullYear ()-dtStart.getFullYear ()) * 12) - (dtStart.getMonth () +1);
case "y": return dtEnd.getFullYear () - dtStart.getFullYear ();
)
)
/ / B2s ( "11 Sina! @ # Programmers _+}{:><")
function b2s (strng) (
var Matches = strng.match (/ [\ x21-\ x7e] / g);
for (var i = 0; i <Matches.length; i + +) (
strng = strng.replace (Matches [i], String.fromCharCode (Matches [i]. charCodeAt (0) +65248))
)
return strng;
)

To a few, IE5 expansion under the prototype



-------------------------------------------------- ------------------------------


/ * Number Object * /
if (! Number.prototype.toFixed) (
Number.prototype.toFixed = function (n) (
with (Math) return round (Number (this) * pow (10, n)) / pow (10, n)
)
)
/ * Array Object * /
if (! Array.prototype.pop) (
Array.prototype.pop = function () (
var lastElement = this [this.length-1];
this.length = Math.max (this.length-1, 0);
return lastElement;
)
)
if (! Array.prototype.push) (
Array.prototype.push = function () (
for (var i = 0; i <arguments.length; i + +) (
this [this.length] = arguments [i];
)
return this.length;
)
)
if (! Array.prototype.shift) (
Array.prototype.shift = function () (
var firstElement = this [0];
this.reverse ();
this.pop ();
this.reverse ();
return firstElement;
)
)
if (! Array.prototype.splice) (
Array.prototype.splice = function () (
var start = arguments [0];
var deleteCount = start + arguments [1];
var deleteItem = this.slice (start, deleteCount);
var beforeItem = this.slice (0, start);
var afterItem = this.slice (deleteCount);
this.length = beforeItem.length;
var i;
for (i = 2; i <arguments.length; this [this.length] = arguments [i ++]);
for (i = 0; i <afterItem.length; this [this.length] = afterItem [i ++]);
return deleteItem;
)
)
if (! Array.prototype.unshift) (
Array.prototype.unshift = function () (
var arr = new Array ();
for (var i = 0; i <arguments.length; arr [i] = arguments [i ++]);
arr = arr.concat (this);
this.length = 0;
for (i = 0; i <arr.length; this [i] = arr [i ++]);
)
)


Java skills and code Articles


Can't Find What You're Looking For?


Rating: Not yet rated

Comments

No comments posted.