動態詳情

JS如何給定時器調用傳遞參數

2014-03-14 14:15:48

在代碼的運轉過程中,過錯是不行避免的,總的來說,過錯發作于兩種狀況,一是程序內部的邏輯或許語法過錯,二是運轉環境或許用戶輸入中不行預知的數據形成的過錯,關于前者,就稱之為過錯(error),能夠經過高度程序來處置,然后一種則更多的稱之為反常(exception),望文生義,即是超出慣例,沒有按程序設計的志愿來輸入數據,當然,反常還會有許多種類型.

所以說,反常并不等價于過錯,相反,有時還會運用反常來處置一些疑問,javascript能夠捕獲一個反常并進行相應的處置,然后避免了瀏覽器向用戶報錯.

用戶能夠運用這種布局來處置可能發作反常的代碼,假如發作反常,則由catch捕獲并進行處置,其語法如下:

try{

//要履行的代碼

}catch(e){

//處置反常的代碼

}

finally{

//不管反常發作與否,都會履行的代碼

}

在JavaScript誕生之前,一切的驗證作業都在服務器端完結,這需求將數據發回到服務器增加了用戶等待時間,用戶體會較差,運用javascript在瀏覽器端進行驗證則能夠較好的處置這些疑問.這也是在實踐的網站建設中最常用到的.

表單驗證通常發作于用戶單擊提交按鈕,數據被提交到服務器之前,這時假如用戶輸入的數據不全或無效,則撤銷提交,一起提示用戶從頭輸入,例如,函數validate()是用于查驗表單的有效性的,回來值為true或許false,在程序中有兩種辦法來調用validate();

方法一:

<input type="submit" onclick="return validate()" />

方法二:

<form action="index.html" onsubmit="return validate()" />?

榜首種辦法中,將validate()綁定到提交按鈕的單擊事情,假如回來false,則按鈕會停止單擊的作用,即表單不會提交;

第二種辦法中,將validate()綁定到贊譽的提交事情,它發作在提交之前,假如回來false,則表單不會提交.

不管是window.setTimeout仍是window.setInterval.在運用函數名作為調用句柄時不能帶參數,而在許多場合有必要要帶參數,而在許多場合有必要要帶參數,這就需求想辦法處置,例如關于函數hello(_name),它用于對于用戶名顯現期待信息:

var username="jack";

//依據用戶名顯現期待信息

function hello(_name)

{

alert("hello,"+_name);

}

這時,假如妄圖運用以下句子來使hello函數推遲3秒履行是不行行的.

window.setTimeout(hello(userName),3000);

這將使hello函數當即履行,并將回來值作為調用句柄傳遞給setTimeout函數,其完畢并不是程序需求的,而運用字符串方式能夠到達想要的成果.

window.setTimeout("hello(username)",3000)

這兒的字符串是一段javascript代碼,其間userName表明的是變量,但這種寫法不行直觀,并且有些場合有必要運用函數名.

友情鏈接 合作伙伴 QQ鏈接申請
友情鏈接:
京ICP備11014893號-3  北京雙立人網絡科技有限公司  版權所有 Copyright©2011 www.zxwjcw.com All Rights Reserved
聯系電話:4006-630-626(7d×24h)       
 
 

立即定制  

  • 項目名稱:
  • 聯系人:
  • 聯系QQ:
  • 所屬行業:
  • 聯系電話:
  • 聯系Email:
  • 需求概要:
菠萝蜜app最污视频