天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

javascript 函數(shù)介紹

1. 函數(shù)的定義和調(diào)用
JavaScript中,定義函數(shù)最常用的方法就是調(diào)用function語(yǔ)句。該語(yǔ)句是由function關(guān)鍵字構(gòu)成的,它后面緊跟的是:
Ø 函數(shù)名
Ø 一個(gè)用括號(hào)的參數(shù)列表,參數(shù)是可選的,參數(shù)是用逗號(hào)分隔開(kāi)
Ø 包括在大括號(hào)中的函數(shù)體
使用函數(shù)需要注意的幾個(gè)地方:
Ø 在函數(shù)體中如果有return語(yǔ)句,它返回一個(gè)值;如果沒(méi)有的話,它返回undefined
Ø JavaScript不會(huì)檢測(cè)函數(shù)參數(shù)個(gè)數(shù)是否正確,如果傳遞實(shí)參多于形參,多余的實(shí)參將沒(méi)忽略;如果少于的話,那么沒(méi)有被傳遞參數(shù)的形參被賦于undefined,在這種情況一般程序運(yùn)行將出錯(cuò)

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
運(yùn)行結(jié)果:
ddxkj
undefined
aaa

ccc
aaa

ccc
aaa

undefined
1.1. 嵌套的函數(shù)
JavaScript 1.2和ECMAScript v3允許一個(gè)函數(shù)定義可以出現(xiàn)在另個(gè)函數(shù)中,也就是函數(shù)的嵌套。需要注意的是,ECMAScript v3不允許函數(shù)定義任意出現(xiàn),它們?nèi)匀槐幌拗圃陧攲尤执a和頂層函數(shù)代碼中,這意味著函數(shù)定義不能出現(xiàn)在循環(huán)和條件語(yǔ)句中。例如:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
運(yùn)行結(jié)果:
10000
1.2. Function()構(gòu)造函數(shù)
在ECMAScript v1和JavaScript 1.1中,允許使用Function()和new動(dòng)態(tài)定義一個(gè)函數(shù)。例如:var f = new Function("x", "y", "return x*y;");
該行代碼幾乎等價(jià)于:function f(x,y){return x*y;}
Function()構(gòu)造函數(shù)可以接受任意多個(gè)字符串參數(shù),最后一個(gè)參數(shù)就是函數(shù)體,可以包含任何JavsScrpt語(yǔ)句,每行語(yǔ)句之間使用;隔開(kāi)。如果說(shuō)函數(shù)沒(méi)有參數(shù),只需一個(gè)函數(shù)體的字符串就可以了。
有時(shí)時(shí)Function()構(gòu)造函數(shù)也被稱為匿名函數(shù),是沒(méi)有定義了函數(shù)名。
Function()構(gòu)造函數(shù)的用途:
Ø 動(dòng)態(tài)創(chuàng)建和編譯一個(gè)函數(shù)。每調(diào)用一次函數(shù),F(xiàn)unction()構(gòu)造函數(shù)都要編譯一次函數(shù),這也就成了一個(gè)缺點(diǎn)。因此,在循環(huán)或經(jīng)常被調(diào)用的函數(shù)中,一般不使用Function()構(gòu)造函數(shù)。
Ø 將函數(shù)定義為JavaScript的表達(dá)式,而不是語(yǔ)句。不過(guò)在JavaScript中,如果想在表達(dá)式中定義一個(gè)函數(shù),而不是在語(yǔ)句,使用函數(shù)直接量會(huì)更方便。
1.3. 函數(shù)直接量
函數(shù)直接量的語(yǔ)法和function語(yǔ)句非常相似,只不過(guò)它被用作表達(dá)式,而不是語(yǔ)句,而且可以不指定函數(shù)名。和function語(yǔ)句、Function()構(gòu)造函數(shù)一樣,函數(shù)直接量也是創(chuàng)建函數(shù)的方式之一。如:
Ø function f(x){return x*x;} //function語(yǔ)句
Ø var f = new Funtion("x","return x*x;"); //Function()構(gòu)造函數(shù)
Ø var f = function(x){return x*x;};
雖然函數(shù)直接量創(chuàng)建的是未命名函數(shù),但也可以指定函數(shù)名,這在編寫(xiě)調(diào)用
自身遞歸函數(shù)非常有用。如:
var f = function fact(x) { if (x <= 1) return 1; else return x*fact(x-1); };
上面代碼定義了一個(gè)未命名函數(shù),并把它的引用存儲(chǔ)在f中。它并沒(méi)有創(chuàng)建fact()這個(gè)函數(shù),只是允許函數(shù)體用這個(gè)名稱沒(méi)調(diào)用自身。
函數(shù)直接量可以像變量一樣,被賦值、被傳遞給函數(shù),甚至直接調(diào)用。例如:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
運(yùn)行結(jié)果:
100
25
2. 作為數(shù)據(jù)的函數(shù)
當(dāng)函數(shù)被做為一種數(shù)據(jù)時(shí),就可以像變量,被賦值、存儲(chǔ)在對(duì)象屬性或數(shù)組、傳遞給函數(shù)。
當(dāng)以如下方式定義一個(gè)函數(shù)時(shí),function square(x){return x*x;},定義了一個(gè)函數(shù)對(duì)象,并把這個(gè)函數(shù)對(duì)象賦值給了square。在這里square沒(méi)有任何意義,不過(guò)只是一個(gè)對(duì)象而已,存儲(chǔ)了函數(shù)對(duì)象。可以將這個(gè)函數(shù)賦值給其它變量。例如:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
運(yùn)行結(jié)果:
16
100

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
運(yùn)行結(jié)果:
25
hello world
100

JavaScript技術(shù)javascript 函數(shù)介紹,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美又粗又长又大AAAA片 | 免费国产久久啪在线 | 国产乱人精品视频AV麻豆 | 日本工口生肉全彩大全 | www色小姐 | 永久免费看A片无码网站四虎 | 国内精品久久久久久久999下 | 久久黄色免费 | 幼儿交1300部一区二区 | 中文字幕在线不卡精品视频99 | 国产精品久久久久婷婷五月色 | 无颜之月5集全免费看无删除 | 九色PORNY蝌蚪视频首页 | 丰满的寡妇hd高清在线观看 | 国产精品一区第二页 | 国产亚洲精品久久久久久禁果TV | 国产精品久久久久婷婷五月色 | 伊人久久大香线蕉观看 | 亚洲色播永久网址大全 | 拍床戏被肉高H纯肉H在水 | 中文字幕乱码亚洲无线三区 | 美女张开腿让男人桶爽无弹窗 | 日韩精品特黄毛片免费看 | 佐山爱痴汉theav | 69日本人XXXX护士HD | 男人J放进女人屁股免费观看 | 视频成人app永久在线观看 | 六六影院午夜伦理 | adc网址在线观看 | 国产人妻人伦精品无码.麻豆 | xxx日本高清视频hd | 伊人天天躁夜夜躁狠狠 | 色多多涩涩屋下载软件 | 99国产精品偷窥熟女精品视频 | 欧美性最猛xxxx在线观看视频 | XXOO麻豆国产在线九九爱 | 精品久久久久久久高清 | 国产精品你懂得 | 18岁末年禁止观看免费1000个 | 亚洲人视频在线观看 | 首页 国产 亚洲 中文字幕 |