復制代碼 代碼如下:
function tt()
{
alert(11);
}
var b = tt;
var b1 = tt(); //執行tt()函數功能
對於函數的引用,可直接將函數名“tt”賦給變量,但不可以是函數名+括號的形式“tt()”,因為第二種是直接執行該函數。
調用函數的時候,用變量名+括號的形式,如:b()。
復制代碼 代碼如下:
function tt()
{
alert(11);
}
var b = tt;
alert(b);
function tt()
{
alert(22);
}
alert(b);
b();
由於變量b中保存的是函數的引用,當函數變化時,b也隨時變化,且不管函數出現的先後順序。兩次alert(b),雖然位置不一樣,但是內容相同。
這只是一個小實驗,下面研究下js中的閉包問題。
學習用書《征服RIA——基於JavaScript的web客戶端開發》和《JavaScript權威指南》中文版。