最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript 函數(shù)介紹

 更新時間:2009年09月11日 21:40:58   作者:  
在JavaScript中,定義函數(shù)最常用的方法就是調用function語句。該語句是由function關鍵字構成的,也是很重要的函數(shù)復用。

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


運行結果:
ddxkj
undefined
aaa

ccc
aaa

ccc
aaa

undefined
1.1. 嵌套的函數(shù)
JavaScript 1.2和ECMAScript v3允許一個函數(shù)定義可以出現(xiàn)在另個函數(shù)中,也就是函數(shù)的嵌套。需要注意的是,ECMAScript v3不允許函數(shù)定義任意出現(xiàn),它們仍然被限制在頂層全局代碼和頂層函數(shù)代碼中,這意味著函數(shù)定義不能出現(xiàn)在循環(huán)和條件語句中。例如:

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

運行結果:
100
25
2. 作為數(shù)據(jù)的函數(shù)
當函數(shù)被做為一種數(shù)據(jù)時,就可以像變量,被賦值、存儲在對象屬性或數(shù)組、傳遞給函數(shù)。
當以如下方式定義一個函數(shù)時,function square(x){return x*x;},定義了一個函數(shù)對象,并把這個函數(shù)對象賦值給了square。在這里square沒有任何意義,不過只是一個對象而已,存儲了函數(shù)對象??梢詫⑦@個函數(shù)賦值給其它變量。例如:

運行結果:
16
100

運行結果:
25
hello world
100

相關文章

  • javascript創(chuàng)建對象、對象繼承的實用方式詳解

    javascript創(chuàng)建對象、對象繼承的實用方式詳解

    JavaScript中的對象是基于原型的。原型是對象的基礎,它定義并實現(xiàn)了一個新對象所必須包含的成員列表,并被所有同類對象實例所共享。與其他語言中類的概念相比,原型更像是類的靜態(tài)成員。本文著重給大家介紹javascript創(chuàng)建對象、對象繼承的實用方式
    2016-03-03
  • htm調用JS代碼

    htm調用JS代碼

    htm調用JS代碼...
    2007-03-03
  • 判斷瀏覽器的js代碼

    判斷瀏覽器的js代碼

    判斷瀏覽器的js代碼...
    2007-01-01
  • JavaScript offsetParent案例詳解

    JavaScript offsetParent案例詳解

    這篇文章主要介紹了JavaScript offsetParent案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下
    2021-08-08
  • Javascript基礎知識(二)事件

    Javascript基礎知識(二)事件

    本文是javascript系列文章的第二篇,主要介紹javascript事件,都是本人的一些心得,希望對大家有所幫助
    2014-09-09
  • javascript中數(shù)組array及string的方法總結

    javascript中數(shù)組array及string的方法總結

    本文結合自己的使用經(jīng)驗,給大家總結了javascript中數(shù)組array及string的使用方法,這里推薦給有需要的小伙伴。
    2014-11-11
  • 簡單談談Javascript函數(shù)中的arguments

    簡單談談Javascript函數(shù)中的arguments

    在JavaScript中,arguments對象是比較特別的一個對象,實際上是當前函數(shù)的一個內置屬性。下面這篇文章主要介紹了關于Javascript函數(shù)中的arguments面貌以及如何轉化為數(shù)組的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-02-02
  • javascript基礎之數(shù)據(jù)類型詳解

    javascript基礎之數(shù)據(jù)類型詳解

    這篇文章主要介紹了如何理解JavaScript中的數(shù)據(jù)類型,幫助大家更好的學習JavaScript,感興趣的朋友可以了解下
    2021-11-11
  • JavaScript內核之基本概念

    JavaScript內核之基本概念

    本文將聚焦于JavaScript中的基本概念,這些概念與傳統(tǒng)語言有比較大的不同,因此單獨列出一章來做專門描述,理解本章的概念對書中后續(xù)章節(jié)的概念,代碼的行為等會有很大的幫助,讀者不妨花比較大的時間在本章,即使你對JavaScript已經(jīng)比較熟悉,也建議通讀本文
    2011-10-10
  • JavaScript For 循環(huán)

    JavaScript For 循環(huán)

    JavaScript For 循環(huán)...
    2007-04-04

最新評論

宜良县| 津南区| 西丰县| 香格里拉县| 南安市| 司法| 卢氏县| 梁平县| 兴文县| 济南市| 容城县| 东辽县| 杨浦区| 四会市| 长葛市| 丹阳市| 灌南县| 壶关县| 琼结县| 龙泉市| 乐平市| 南和县| 绿春县| 志丹县| 夹江县| 温泉县| 咸宁市| 赣州市| 双桥区| 安泽县| 湘乡市| 原平市| 浦城县| 静宁县| 安徽省| 聂荣县| 洛南县| 新建县| 青川县| 民和| 巴里|