免费A级毛片无码专区网站-成人国产精品视频一区二区-啊 日出水了 用力乖乖在线-国产黑色丝袜在线观看下-天天操美女夜夜操美女-日韩网站在线观看中文字幕-AV高清hd片XXX国产-亚洲av中文字字幕乱码综合-搬开女人下面使劲插视频

day05-JavaScript02

JavaScript028.JavaScript函數(shù)

  • JavaScript函數(shù)介紹
    函數(shù)是由事件驅(qū)動(dòng)的,或者當(dāng)它被調(diào)用時(shí),執(zhí)行的可重復(fù)使用的代碼
例子
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>函數(shù)快速入門</title><script type="text/javascript">//定義一個(gè)簡(jiǎn)單的函數(shù)//如果不調(diào)用函數(shù),該函數(shù)不會(huì)執(zhí)行//在js中如果要執(zhí)行函數(shù),有兩種方式:1.主動(dòng)調(diào)用 2.通過(guò)一個(gè)事件去觸發(fā)該函數(shù)function hi() {alert("hi~~~");}//hi();主動(dòng)調(diào)用</script></head><body><!--這里表示給按鈕button綁定了一個(gè)onclick事件,當(dāng)用戶點(diǎn)擊了該button,就會(huì)觸發(fā)hi()函數(shù)--><button onclick="hi()">點(diǎn)擊這里</button></body></html>
day05-JavaScript02

文章插圖

day05-JavaScript02

文章插圖
8.1JS函數(shù)的定義方式方式一:function關(guān)鍵字來(lái)定義函數(shù)
基本語(yǔ)法:
function 函數(shù)名(形參列表){ 函數(shù)體 return 表達(dá)式}//調(diào)用 函數(shù)名(實(shí)參列表);
例子
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>函數(shù)使用方式1</title><script type="text/javascript">//1.定義沒(méi)有返回值的函數(shù)function f1() {alert("f1被調(diào)用")}f1();//f1被調(diào)用//2.定義有形參的函數(shù)//這里的形參不需要指定類型,name的數(shù)據(jù)類型是由實(shí)參決定的function f2(name) {alert("hi" + name);}f2("你好嗎?");//hi你好嗎?f2(800);//hi800//3.定義有形參和返回值的函數(shù),不需要指定返回的類型,返回類型由返回的數(shù)據(jù)來(lái)決定function f3(n1, n2) {return n1 + n2;}alert("f3(\"hi\",200)="+f3("hi",200));//f3("hi",200)=hi200</script></head><body></body></html>方式二:將函數(shù)賦給變量
基本語(yǔ)法:
var 函數(shù)名=fuction(形參列表){函數(shù)體return 表達(dá)式}//調(diào)用 函數(shù)名(實(shí)參列表);
例子
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>使用函數(shù)的第二種方式</title><script type="text/javascript">//可以理解成f1指向了函數(shù)var f1 = function () {alert("老師你好");}console.log(typeof f1);//f1的數(shù)據(jù)類型是 functionf1();//調(diào)用函數(shù)-老師你好var f3 = f1;//將f1指向的函數(shù)賦給其他變量f3();//老師你好var f2 = function (name) {alert("hi" + name);}f2("小紅帽");//hi小紅帽var f4 = function (n1, n2) {return n1 + n2;}alert(f4(100, 50));//150</script></head><body></body></html>8.2JS函數(shù)注意事項(xiàng)和細(xì)節(jié)
  1. JS中函數(shù)的重載會(huì)覆蓋掉上一次的定義
  2. 函數(shù)的arguments隱形參數(shù)(作用域在fuction函數(shù)內(nèi)),隱形參數(shù)是一個(gè)對(duì)象數(shù)組
    • 隱形參數(shù):在function函數(shù)中不需要定義,可以直接用來(lái)獲取所有參數(shù)的變量
    • 隱形參數(shù)特別像java的可變參數(shù)一樣 public void fun(int ...args),操作類似數(shù)組
    • 如果函數(shù)有形參,在傳入實(shí)參的時(shí)候,仍然按照順序匹配,如果實(shí)參個(gè)數(shù)大于形參個(gè)數(shù),就將匹配上的數(shù)賦給形參,忽略沒(méi)有匹配上的實(shí)參 。但是仍然會(huì)把所有的實(shí)參都賦給arguments
    • 如果形參個(gè)數(shù)大于實(shí)參個(gè)數(shù),沒(méi)有匹配的形參的值就是undefined
例子1:JS中函數(shù)的重載會(huì)覆蓋掉上一次的定義
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>函數(shù)使用的注意事項(xiàng)</title><script type="text/javascript">//1.1js中函數(shù)的重載會(huì)覆蓋掉上一次的定義function f1() {alert("ok f1")}function f1(name) {alert("hi " + name);}//1.2當(dāng)調(diào)用方法f1()的時(shí)候,實(shí)際上調(diào)用的是f1(name)方法//調(diào)用f1(name)時(shí),如果沒(méi)有傳入實(shí)參,那么這個(gè)形參name就是undefinedf1();//hi undefined</script></head><body></body></html>

經(jīng)驗(yàn)總結(jié)擴(kuò)展閱讀