JavaScript常用函數積累

頁面JS函數
這是一些我平時用到的JS腳碼,希望對大家有所幫助。。。
 

1.常規函數
  javascript常規函數包括以下9個函數:
  (1)alert函數:顯示一個警告對話框,包括一個OK按鈕。
  (2)confirm函數:顯示一個確認對話框,包括OK、Cancel按鈕。
  (3)escape函數:將字符轉換成Unicode碼。
  (4)eval函數:計算表達式的結果。
  (5)isNaN函數:測試是(true)否(false)不是一個數字。
  (6)parseFloat函數:將字符串轉換成符點數字形式。
  (7)parseInt函數:將符串轉換成整數數字形式(可指定幾進制)。
  (8)prompt函數:顯示一個輸入對話框,提示等待用戶輸入。例如:
  (9)unescape函數:解碼由escape函數編碼的字符。
  2.數組函數
  javascript數組函數包括以下4個函數:
  (1)join函數:轉換並連接數組中的所有元素爲一個字符串。例:
程序代碼
    function JoinDemo()
    {
     var a, b;
     a = new Array(0,1,2,3,4);
     b = a.join("-");//分隔符
     return(b);//返回的b=="0-1-2-3-4"
    }
 
 (2)langth函數:返回數組的長度。例:
    
程序代碼
function LengthDemo()
    {
     var a, l;
     a = new Array(0,1,2,3,4);
     l = a.length;
     return(l);//l==5
    }
  (3)reverse函數:將數組元素順序顛倒。例:
   
程序代碼
function ReverseDemo()
   {
    var a, l;
    a = new Array(0,1,2,3,4);
    l = a.reverse();
    return(l);
   }
  (4)sort函數:將數組元素重新排序。例:
    
程序代碼
function SortDemo()
    {
     var a, l;
     a = new Array("X" ,"y" ,"d", "Z", "v","m","r");
     l = a.sort();
     return(l);
    }
  3.日期函數
  javascript日期函數包括以下20個函數:
  (1)getDate函數:返回日期的“日”部分,值爲1~31。例:
   
程序代碼
function DateDemo()
   {
    var d, s = "Today's date is: ";
    d = new Date();
    s += (d.getMonth() + 1) + "/";
    s += d.getDate() + "/";
    s += d.getYear();
    return(s);
   }
  (2)getDay函數:返回星期幾,值爲0~6,其中0表示星期日,1表示星期一,...,6表示星期六。例:
   
程序代碼
function DateDemo()
   {
    var d, day, x, s = "Today is: ";
    var x = new Array("Sunday", "Monday", "Tuesday");
    var x = x.concat("Wednesday","Thursday", "Friday");
    var x = x.concat("Saturday");
    d = new Date();
    day = d.getDay();
    return(s += x[day]);
   }
  (3)getHouse函數:返回日期的“小時”部分,值爲0~23。例。
   
程序代碼
function TimeDemo()
   {
    var d, s = "The current local time is: ";
    var c = ":";
    d = new Date();
    s += d.getHours() + c;
    s += d.getMinutes() + c;
    s += d.getSeconds() + c;
    s += d.getMilliseconds();
    return(s);
   }
  (4)getMinutes函數:返回日期的“分鐘”部分,值爲0~59。見上例。
  (5)getMonth函數:返回日期的“月”部分,值爲0~11。其中0表示1月,2表示3月,...,11表示12月。見前面的例子。
  (6)getSeconds函數:返回日期的“秒”部分,值爲0~59。見前面的例子。
  (7)getTime函數:返回系統時間。
   
程序代碼
function GetTimeTest()
   {
    var d, s, t;
    var MinMilli = 1000 * 60;
    var HrMilli = MinMilli * 60;
    var DyMilli = HrMilli * 24;
    d = new Date();
    t = d.getTime();
    s = "It's been "
    s += Math.round(t / DyMilli) + " days since 1/1/70";
    return(s);
   }
  (8)getTimezoneOffset函數:返回此地區的時差(當地時間與GMT格林威治標準時間的地區時差),單位爲分鐘。
   
程序代碼
function TZDemo()
   {
    var d, tz, s = "The current local time is ";
    d = new Date();
    tz = d.getTimezoneOffset();
    if (tz 的鏈接點的名稱,另一個函數link設定的URL地址。
  (2)big函數:將字體加到一號,與...標籤結果相同。
  (3)blink函數:使字符串閃爍,與...標籤結果相同。
  (4)bold函數:使字體加粗,與...標籤結果相同。
  (5)charAt函數:返回字符串中指定的某個字符。
  (6)fixed函數:將字體設定爲固定寬度字體,與...標籤結果相同。
  (7)fontcolor函數:設定字體顏色,與標籤結果相同。
  (8)fontsize函數:設定字體大小,與標籤結果相同。
  (9)indexOf函數:返回字符串中第一個查找到的下標index,從左邊開始查找。
  (10)italics函數:使字體成爲斜體字,與...標籤結果相同。
  (11)lastIndexOf函數:返回字符串中第一個查找到的下標index,從右邊開始查找。
  (12)length函數:返回字符串的長度。(不用帶括號)
  (13)link函數:產生一個超級鏈接,相當於設定的URL地址。
  (14)small函數:將字體減小一號,與...標籤結果相同。
  (15)strike函數:在文本的中間加一條橫線,與...標籤結果相同。
  (16)sub函數:顯示字符串爲下標字(subscript)。
  (17)substring函數:返回字符串中指定的幾個字符。
  (18)sup函數:顯示字符串爲上標字(superscript)。
  (19)toLowerCase函數:將字符串轉換爲小寫。
  (20)toUpperCase函數:將字符串轉換爲大寫。
//校驗是否全由數字組成
程序代碼
function isDigit(s)
{
var patrn=/^[0-9]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}
//校驗登錄名:只能輸入5-20個以字母開頭、可帶數字、“_”、“.”的字串
程序代碼
function isRegisterUserName(s)
{
var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
if (!patrn.exec(s)) return false
return true
}
//校驗用戶姓名:只能輸入1-30個以字母開頭的字串
程序代碼
function isTrueName(s)
{
var patrn=/^[a-zA-Z]{1,30}$/;
if (!patrn.exec(s)) return false
return true
}
//校驗密碼:只能輸入6-20個字母、數字、下劃線
程序代碼
function isPasswd(s)
{
var patrn=/^(w){6,20}$/;
if (!patrn.exec(s)) return false
return true
}
//校驗普通電話、傳真號碼:可以“+”開頭,除數字外,可含有“-”
程序代碼
function isTel(s)
{
//var patrn=/^[+]{0,1}(d){1,3}[ ]?([-]?(d){1,12})+$/;
var patrn=/^[+]{0,1}(d){1,3}[ ]?([-]?((d)|[ ]){1,12})+$/;
if (!patrn.exec(s)) return false
return true
}
//校驗手機號碼:必須以數字開頭,除數字外,可含有“-”
程序代碼
function isMobil(s)
{
var patrn=/^[+]{0,1}(d){1,3}[ ]?([-]?((d)|[ ]){1,12})+$/;
if (!patrn.exec(s)) return false
return true
}
//校驗郵政編碼
程序代碼
function isPostalCode(s)
{
//var patrn=/^[a-zA-Z0-9]{3,12}$/;
var patrn=/^[a-zA-Z0-9 ]{3,12}$/;
if (!patrn.exec(s)) return false
return true
}
//校驗搜索關鍵字
程序代碼
function isSearch(s)
{
var patrn=/^[^`~!@#$%^&*()+=|][]{}:;',.<>/?]{1}[^`~!@$%^&()+=|][]{}:;',.<>?]{0,19}$/;
if (!patrn.exec(s)) return false
return true
}
程序代碼
function isIP(s) //by zergling
{
var patrn=/^[0-9.]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////

/**
* 全選的所有指定名稱的checkbox
*@state 全選的checkbox的狀態
*@name 表格中的所有checkbox的名稱
*@author fangtf
*@type void
*/
function selectAll(state,name) {
var ids = document.getElementsByName(name);
for (var i = 0; i < ids.length; i++)
{
ids[i].checked = state;
}
}
/**
* 全選的所有指定id名稱的同名checkbox
*@state 全選的checkbox的狀態
*@name 表格中的所有checkbox的名稱
*@name 表格中的所有checkbox的id
*@author fangtf
*@type void
*/
function selectAllCheckboxByID(state,name,id) {
var ids = document.getElementsByName(name);
for (var i = 0; i < ids.length; i++)
{
if(ids[i].id == id)
{
ids[i].checked = state;
}
}
}
/**
* 全選頁面上所有的checkbox
*@state 全選的checkbox的狀態
*@author fangtf
*@type void
*/
function selectAlls(state)
{
var inputs = document.getElementsByTagName("input");
for(var i =0;i<inputs.length;i++)
{
if(inputs[i].type == "checkbox")
{
inputs[i].checked =state;
}
}
}
/**
*得到鼠標所單擊的行
*@type Object
*/
function GetRow(oElem) {
while (oElem) {
if (oElem.tagName.toLowerCase() == "tr" && oElem.parentElement.tagName.toLowerCase() == "tbody") {
return oElem;
}
if (oElem.tagName.toLowerCase() == "table" || oElem.tagName.toLowerCase() == "th") {
return false;
}
oElemoElem = oElem.parentElement;
}
}
/**
* 全選當前行的checkbox
*@state 全選的checkbox的狀態
*@author fangtf
*@type void
*/
function selectRowCheckbox(state)
{
var row = GetRow(window.event.srcElement);
var cells = row.childNodes;
for(var i=0;i<cells.length;i++)
{
var cell = cells[i].childNodes[0];
if(cell.tagName == "INPUT")
{
cell.checked = state;
}
}
}
/**
*選中指定值的Radio
*如:有兩個radio,
*第一個的name="ids",value="1"
*第二個的name="ids",value="2"
*調用方法selectRadio("ids","1");
*那麼數值爲1的Radio將被選中
*@name radio的名稱
*@value radio的值
*@author fangtf
*@type void
*/
function selectRadio(name,value) {
var radioObject = document.getElementsByName(name);
if(value === "")
{
radioObject[0].checked = true;
return;
}
for (var i = 0; i < radioObject.length; i++)
{
if(radioObject[i].value == value)
{
radioObject[i].checked = true;
break;
}
}
}
/**
*選中指定值的checkbox
*如:有兩個checkbox,
*第一個的name="ids",value="1"
*第二個的name="ids",value="2"
*第三個的name="ids",value="3"
*調用這個方法selectCheckbox("ids","1,2")那麼數值爲1,2的checkbox將被選中
*
*@name 要選中的checkbox數組的名稱
*@value 判斷時候選中的值
*@author fangtf
*@type void
*/
function selectCheckbox(name,value) {
var checkObject = document.getElementsByName(name);
var valuevalues = value.split(",");
for(var j = 0; j < values.length; j++)
{
for (var i = 0; i < checkObject.length; i++)
{
if(checkObject[i].value == values[j])
{
checkObject[i].checked = true;
break;
}
}
}
}
/**
*選中指定值的select
*如:有一個名稱爲user的select
*<option value="0"></option>
*<option value="1"></option>
*調用這個方法selectOption("user","0")那麼選項爲0的選項就被選中
*
*@name String select的名稱
*@value String 判斷時候選中的值
*@author fangtf
*@type void
*/
function selectOption(name,value)
{
document.getElementsByName(name)[0].value=value;
}

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/yefengzhixia/archive/2009/06/30/4310830.aspx
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章