1.Js函數(shù)可以傳入不同的參數(shù),如
function writeNString(strMsg){
document.write(strMsg + "<br>");
}
2.Js函數(shù)返回值,js函數(shù)可以將運(yùn)行的結(jié)果返回,函數(shù)可以視為一個黑盒子,使用參數(shù)輸入數(shù)據(jù)后產(chǎn)生所需的運(yùn)行結(jié)果,如
function one2N(intnumber){
var intTotal = 0;
for(var i=0;i<=intnumber;i++){
intTotal +=i;}
return intTotal;
}
3.Js函數(shù)的傳值和傳址參數(shù)
傳值:只是將變量的值傳入函數(shù),函數(shù)會另外配置內(nèi)存保存參數(shù)值,所以并不會改變原變量的值。
傳址:將變量實(shí)際保存的內(nèi)存位置傳入函數(shù),所以如果在函數(shù)中變更參數(shù)的值,也會同時變動原參數(shù)的值。
數(shù)字、字符串和布爾----傳值
對象、數(shù)組和函數(shù)----傳址
字符串對象-------傳址
4.Js函數(shù)的參數(shù)數(shù)組
Js的函數(shù)都擁有一個參數(shù)數(shù)組(Arguments Array)對象,叫做arguments對象。當(dāng)調(diào)用函數(shù)傳入?yún)?shù)時,函數(shù)即使沒有指明參數(shù)名稱,也一樣可以使用參數(shù)數(shù)組的對象獲取參數(shù)的個數(shù)和個別的參數(shù)值。
function sumInteger(){
var total = 0;
for(var i=0; i<sumInteger.arguments.length;i++){
total += sumInteger.arguments[i];
}
return total;
}
//調(diào)用函數(shù)
inntotal = sumInteger(100,45,567,234);
document.write("函數(shù)sumInteger(100,45,567,234):"+inttotal+"<br>");
5.JS函數(shù)的變量范圍
JS函數(shù)有兩種變量:
局部變量(local Variables)在函數(shù)內(nèi)聲明的變量,變量只能在函數(shù)內(nèi)的程序行內(nèi)使用,函數(shù)外的程序代碼并無法訪問此變量。
全局變量(Global Variables)在函數(shù)外聲明的變量,整個JS程序的函數(shù)和程序代碼都能訪問此變量。