函數就是包裹在花括號中的代碼塊,前面使用了關鍵詞function:
復制代碼 代碼如下:
function functionName()
{
這裡是要執行的代碼
}
函數參數
函數的參數可以任意多個,不用聲明變量類型,只用給出變量名:
復制代碼 代碼如下:
function myFunction(name, job)
{
這裡是要執行的代碼
}
函數返回值
在函數中使用return語句,函數會停止執行,返回調用它的地方。
函數的返回值也不用聲明類型,直接返回即可。
復制代碼 代碼如下:
function myFunction()
{
var x=5;
return x;
}
上面的函數會返回返回值5。
注:整個 JavaScript 並不會停止執行,僅僅是函數。
JavaScript 將繼續執行代碼,從調用函數的地方。
函數調用將被返回值取代:
復制代碼 代碼如下:
var myVar=myFunction();
僅僅希望退出函數時 ,也可使用 return 語句。
返回值是可選的:
復制代碼 代碼如下:
function myFunction(a,b)
{
if (a>b)
{
return;
}
x=a+b;
}
當a大於b時不再往下執行,而是直接返回。
局部變量
關於局部變量和全局變量這裡再重復說一遍吧。
在 JavaScript 函數內部聲明的變量(使用var)是局部變量,所以只能在函數內部訪問它。(該變量的作用域是局部的)。
可以在不同的函數中使用名稱相同的局部變量,因為只有聲明過該變量的函數才能識別出該變量。
只要函數運行完畢,本地變量就會被刪除。
全局變量
在函數外聲明的變量是全局變量,網頁上的所有腳本和函數都能訪問它。
注意:向未聲明的 JavaScript 變量來分配值:
如果您把值賦給尚未聲明的變量,該變量將被自動作為全局變量聲明。
這條語句:
carname="Volvo";
將聲明一個全局變量carname,即使它在函數內執行。
函數實例
復制代碼 代碼如下:
<body>
<script type="text/javascript">
function member(name, job) //類比Java的構造函數,JS是沒有類的概念的
{
this.name = name;
this.job = job;
}
function showProperty(obj, objString) {
var str = "";
for ( var i in obj) {
//遍歷對象中的每一個屬性
str += objString + "." + i + "=" + obj[i] + "<br/>";
//i表示屬性
//obj[i]表示該屬性的值
}
return str;
}
var obj = new member("劉德華", "藝人");//建立對象實例
document.writeln(showProperty(obj, "person"));
</script>
</body>
輸出:
復制代碼 代碼如下:
person.name=劉德華
person.job=藝人
以上就是本文的全部內容了,希望小伙伴們能夠喜歡,有疑問請給我留言。