麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

細說javascript函數從函數的構成開始

2019-11-20 22:21:00
字體:
來源:轉載
供稿:網友

javascript函數是一個比較奇怪的東西,接觸一段時間你就會犯迷糊,弄不明白它到底是什么了。你是否會因為有的javascript函數沒有名字而莫名其妙,是否會因為javascript函數的參數沒有類型而抓狂,是否為javascript函數以表達式的形態存在而徹底崩潰。正是因為有了這些煩惱才讓javascript函數值得我們尋味,我想從函數的構成來細說函數,這聽起來像是一句廢話,講任何東西當然是從構成去談,但是由于javascript函數你確實捉摸不了它的形態,因此這里我是從一個標準函數的構成來細說。

1.函數名
在面向對象語言中,函數一般都有名稱,但javascript函數不一定,這類函數稱為匿名函數或者函數直接量。它就像是一個表達式,然后這個表達式的左值即可以用來調用函數,也可以存儲在變量中傳遞給其它的函數。它的好處就是不用每次調用的時候創建新的對象。

復制代碼 代碼如下:

var f= function (x) {return x*x;};
alert( f(6) );

以上例子就會在頁面上彈出窗口顯示36

2.參數
javascript函數的參數也比較神奇,調用javascript函數時如果填寫的參數和函數定義的參數不一致(例如個數不一致),程序不會出錯,有時甚至能調用成功,這對于java語言是無法想象的,但javascript函數可以做到。例如上面的例子,我們這樣調用:
復制代碼 代碼如下:

alert(f(6,7))

結果仍然是36。雖然這樣不會出錯,但是我們仍然想函數被正確的調用,保證調用時和函數定義的參數數目一致。通過Arguments對象可以獲取函數調用者的參數數目。修改上述代碼。
復制代碼 代碼如下:

var f= function (x) {
if(arguments.length>1) {
return "out of range";
} else {
return x*x;
}
};
alert( f(6,7) );

處理獲取函數調用者的參數數目,還可以獲取到這些參數的值,將上述代碼再進行一番修改:
復制代碼 代碼如下:

var f= function (x) {
if(arguments.length>1) {
return arguments[0]*arguments[1];

復制代碼 代碼如下:

} else {
return x*x;
}
};
alert( f(6,7) );

你能猜出結果是多少嗎?對,是42。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一级毛片在线看 | 国产亚洲精品影达达兔 | 免费观看一区 | 午夜免费一区 | 91成人亚洲 | 欧美成人午夜精品久久久 | 久久综合婷婷 | 国产正在播放 | 色播视频网站 | 精品久久久久久久 | 精品国产一区二区三区免费 | 国产v综合v亚洲欧美久久 | 免费一级毛片观看 | 羞羞视频免费入口网站 | 午夜视频免费播放 | 亚洲欧美成aⅴ人在线观看 免费看欧美黑人毛片 | 国产一级毛片高清视频 | 综合网天天射 | 日本在线视频免费 | 精品一区二区三区免费看 | 欧美淫视频 | 成人午夜天堂 | 欧美囗交 | 国产精品性夜天天视频 | 一级黄色影院 | 91福利国产在线观一区二区 | 国产91一区二区三区 | 亚洲性在线视频 | 久久69精品久久久久久国产越南 | 最新欧美精品一区二区三区 | 污黄视频在线观看 | 最新中文字幕在线视频 | 麻豆视频在线免费观看 | 精品久久久久久久久中文字幕 | 日本残忍极度灌浣肠视频 | 精品亚洲夜色av98在线观看 | 国产盼盼私拍福利视频99 | 美女露100%无遮挡 | 在线成人免费观看 | 亚欧在线免费观看 | 午夜视频亚洲 |