JavaScript學(xué)習(xí)筆記之JS函數(shù)
函數(shù)就是包裹在花括號(hào)中的代碼塊,前面使用了關(guān)鍵詞function:
function functionName()
{
這里是要執(zhí)行的代碼
}
函數(shù)參數(shù)
函數(shù)的參數(shù)可以任意多個(gè),不用聲明變量類型,只用給出變量名:
function myFunction(name, job)
{
這里是要執(zhí)行的代碼
}
函數(shù)返回值
在函數(shù)中使用return語(yǔ)句,函數(shù)會(huì)停止執(zhí)行,返回調(diào)用它的地方。
函數(shù)的返回值也不用聲明類型,直接返回即可。
function myFunction()
{
var x=5;
return x;
}
上面的函數(shù)會(huì)返回返回值5。
注:整個(gè) JavaScript 并不會(huì)停止執(zhí)行,僅僅是函數(shù)。
JavaScript 將繼續(xù)執(zhí)行代碼,從調(diào)用函數(shù)的地方。
函數(shù)調(diào)用將被返回值取代:
var myVar=myFunction();
僅僅希望退出函數(shù)時(shí) ,也可使用 return 語(yǔ)句。
返回值是可選的:
function myFunction(a,b)
{
if (a>b)
{
return;
}
x=a+b;
}
當(dāng)a大于b時(shí)不再往下執(zhí)行,而是直接返回。
局部變量
關(guān)于局部變量和全局變量這里再重復(fù)說一遍吧。
在 JavaScript 函數(shù)內(nèi)部聲明的變量(使用var)是局部變量,所以只能在函數(shù)內(nèi)部訪問它。(該變量的作用域是局部的)。
可以在不同的函數(shù)中使用名稱相同的局部變量,因?yàn)橹挥新暶鬟^該變量的函數(shù)才能識(shí)別出該變量。
只要函數(shù)運(yùn)行完畢,本地變量就會(huì)被刪除。
全局變量
在函數(shù)外聲明的變量是全局變量,網(wǎng)頁(yè)上的所有腳本和函數(shù)都能訪問它。
注意:向未聲明的 JavaScript 變量來(lái)分配值:
如果您把值賦給尚未聲明的變量,該變量將被自動(dòng)作為全局變量聲明。
這條語(yǔ)句:
carname="Volvo";
將聲明一個(gè)全局變量carname,即使它在函數(shù)內(nèi)執(zhí)行。
函數(shù)實(shí)例
<body>
<script type="text/javascript">
function member(name, job) //類比Java的構(gòu)造函數(shù),JS是沒有類的概念的
{
this.name = name;
this.job = job;
}
function showProperty(obj, objString) {
var str = "";
for ( var i in obj) {
//遍歷對(duì)象中的每一個(gè)屬性
str += objString + "." + i + "=" + obj[i] + "<br/>";
//i表示屬性
//obj[i]表示該屬性的值
}
return str;
}
var obj = new member("劉德華", "藝人");//建立對(duì)象實(shí)例
document.writeln(showProperty(obj, "person"));
</script>
</body>
輸出:
person.name=劉德華
person.job=藝人
以上就是本文的全部?jī)?nèi)容了,希望小伙伴們能夠喜歡,有疑問請(qǐng)給我留言。
- javascript時(shí)區(qū)函數(shù)介紹
- JavaScript中valueOf函數(shù)與toString方法深入理解
- JavaScript回調(diào)(callback)函數(shù)概念自我理解及示例
- javascript 終止函數(shù)執(zhí)行操作
- javascript獲取函數(shù)名稱、函數(shù)參數(shù)、對(duì)象屬性名稱的代碼實(shí)例
- 詳談JavaScript 匿名函數(shù)及閉包
- Javascript基礎(chǔ)教程之函數(shù)對(duì)象和屬性
- 淺談javascript 函數(shù)屬性和方法
- 淺談javascript 函數(shù)內(nèi)部屬性
相關(guān)文章
淺析js中2個(gè)等號(hào)與3個(gè)等號(hào)的區(qū)別
這篇文章介紹了js中2個(gè)等號(hào)與3個(gè)等號(hào)的區(qū)別,有需要的朋友可以參考一下2013-08-08javascript學(xué)習(xí)筆記(九)javascript中的原型(prototype)及原型鏈的繼承方式
在javascript學(xué)習(xí)筆記(八)中,我們主要學(xué)習(xí)了在使用javascript面向?qū)ο缶幊虝r(shí),如何創(chuàng)建對(duì)象及添加對(duì)象的屬性和方法。2011-04-04onkeyup,onkeydown和onkeypress的區(qū)別介紹
三者在事件的響應(yīng)上還有一點(diǎn)不同,就是onkeydown 、onkeypress事件響應(yīng)的時(shí)候輸入的字符并沒有被系統(tǒng)接受,而響應(yīng)onkeyup的時(shí)候,輸入流已經(jīng)被系統(tǒng)接受2013-10-10javascript SpiderMonkey中的函數(shù)序列化如何進(jìn)行
JavaScript中如何進(jìn)行函數(shù)序列化,函數(shù)序列化的作用是什么?本文將介紹SpiderMonkey中的函數(shù)序列化,有需要的朋友可以參考下2012-12-12JavaScript中使用concat()方法拼接字符串的教程
這篇文章主要介紹了JavaScript中使用concat()方法拼接字符串的教程,是JS入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06總結(jié)js函數(shù)相關(guān)知識(shí)點(diǎn)
本篇文章給大家簡(jiǎn)要分析了JS中函數(shù)相關(guān)的重要知識(shí)點(diǎn),對(duì)此有興趣的朋友可以參考學(xué)習(xí)下。2018-02-02