
1:常規寫法
//函數的寫法
function run{
alert("常規寫法") //這里是你函數的內容
}
//調用
run()
2:匿名函數寫法
var run = function(){
alert("這是一種聲明函數的寫法,左邊是一個變量,右邊是一個函數的表達式,
意思就是把一個匿名函數的表達式賦值給了一個變量myrun,只是聲明了一個變量指向了一個函數對象")//這里是你函數的內容
}
run()
3:將方法作為一個對象
//作為對象方法,函數寫法,這里創建了兩個函數外面用{}包裹起來
var Text = {
run1 : function(){
alert("這個必須放在一個對象內部,放在外邊會出錯")//這里是函數內容
},
run2 : function(){
alert("這個必須放在一個對象內部,放在外邊會出錯")//這里是函數內容
}
}
Text.run1()//調用第一個函數
Text.run2()//調用第二個函數
4:構造函數中給對象添加方法
JAVAscript中的每個對象都有prototype屬性,JavaScript中對象的prototype屬性的解釋是:返回對象類型原型的引用。
// 給對象添加方法
var funName = function(){};
funName.prototype.way = function(){
alert('這是在funName函數上的原始對象上加了一個way方法,構造函數中用到');
}
// 調用
var funname = new text();// 創建對象
funname.way();//調用對象屬性
5:自執行函數
js自執行函數查到了幾種不同寫法
//方法1:最前最后加括號
(
function(){alert(1);}()
);
/*這是jslint推薦的寫法,好處是,能提醒閱讀代碼的人,這段代碼是一個整體。
例如,在有語法高亮匹配功能的編輯器里,光標在第一個左括號后時,最后一個右括號也會高亮,看代碼的人一眼就可以看到這個整體。 */
//方法2:function外面加括號
(function(){alert(1);})();
//這種做法比方法1少了一個代碼整體性的好處。
//方法3:function前面加運算符,常見的是!與void 。
!function(){alert(1);}();
void function(){alert(2);}();