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

淺析javascript中函數(shù)聲明和函數(shù)表達式的區(qū)別

 更新時間:2015年02月15日 09:37:34   投稿:hebedich  
這篇文章主要介紹了淺析javascript中函數(shù)聲明和函數(shù)表達式的區(qū)別,需要的朋友可以參考下

javascript中聲明函數(shù)的方法有兩種:函數(shù)聲明式和函數(shù)表達式.

區(qū)別如下:

1).以函數(shù)聲明的方法定義的函數(shù),函數(shù)名是必須的,而函數(shù)表達式的函數(shù)名是可選的.

2).以函數(shù)聲明的方法定義的函數(shù),函數(shù)可以在函數(shù)聲明之前調(diào)用,而函數(shù)表達式的函數(shù)只能在聲明之后調(diào)用.

3).以函數(shù)聲明的方法定義的函數(shù)并不是真正的聲明,它們僅僅可以出現(xiàn)在全局中,或者嵌套在其他的函數(shù)中,但是它們不能出現(xiàn)在循環(huán),條件或者try/catch/finally中,而

    函數(shù)表達式可以在任何地方聲明.

下面分別用兩種方法定義函數(shù):

復(fù)制代碼 代碼如下:

 //函數(shù)聲明式
 function greeting(){
       console.log("hello world"); 
 }
 //函數(shù)表達式
 var greeting = function(){
     console.log("hello world");
 }

下面一個有趣的javascript:

復(fù)制代碼 代碼如下:

 function f() { console.log('I am outside!'); }
 (function () {
   if(false) {
     // 重復(fù)聲明一次函數(shù)f
     function f() { console.log('I am inside!'); }
   }
   f();
 }());

會輸出什么呢?第一反應(yīng)應(yīng)該是"I am outside"吧.  結(jié)果在chrome中輸出"I am inside",IE11直接報錯,firefox低一點的版本輸出"I am outside"...

chrome輸出的結(jié)果很明確的反應(yīng)了用函數(shù)聲明式聲明的函數(shù)的特點--函數(shù)在聲明之前就可以調(diào)用.

IE報錯顯示缺少對象,因為函數(shù)聲明在了條件里,違背了函數(shù)聲明式的原則.

函數(shù)表達式的作用域:

如果函數(shù)表達式聲明的函數(shù)有函數(shù)名,那么這個函數(shù)名就相當于這個函數(shù)的一個局部變量,只能在函數(shù)內(nèi)部調(diào)用,舉個栗子:

復(fù)制代碼 代碼如下:

 var f = function fact(x) {
                 if (x <= 1)
                     return 1;
                 else
                     return x*fact(x-1);
                 };
                 alert(fact());   // Uncaught ReferenceError: fact is not defined

fact()在函數(shù)內(nèi)部可以調(diào)用,在函數(shù)外部調(diào)用就會報錯:fact未定義

以上就是本文的全部內(nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • Echarts折線圖如何根據(jù)容器寬度自適應(yīng)展示

    Echarts折線圖如何根據(jù)容器寬度自適應(yīng)展示

    我們使用vue做項目的時候,常常需要做到echarts圖表的自適應(yīng),一般是根據(jù)頁面的寬度做對應(yīng)的適應(yīng),下面這篇文章主要給大家介紹了關(guān)于Echarts折線圖如何根據(jù)容器寬度自適應(yīng)展示的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • javascript實現(xiàn)選中復(fù)選框后相關(guān)輸入框變灰不可用的方法

    javascript實現(xiàn)選中復(fù)選框后相關(guān)輸入框變灰不可用的方法

    這篇文章主要介紹了javascript實現(xiàn)選中復(fù)選框后相關(guān)輸入框變灰不可用的方法,涉及javascript針對頁面元素屬性的相關(guān)操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • javascript使用正則獲取url上的某個參數(shù)

    javascript使用正則獲取url上的某個參數(shù)

    使用indexOf取得?之后的參數(shù),以&使split進行分割成數(shù)組,下面展示了一個從url上獲取名為MenuCode參數(shù)的過程
    2014-09-09
  • js獲取瀏覽器的各種屬性

    js獲取瀏覽器的各種屬性

    本篇文章主要介紹了js獲取瀏覽器各種屬性的相關(guān)資料。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-04-04
  • 小程序?qū)崿F(xiàn)留言板

    小程序?qū)崿F(xiàn)留言板

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)留言板,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • JS實現(xiàn)進度條動態(tài)加載特效

    JS實現(xiàn)進度條動態(tài)加載特效

    這篇文章主要為大家詳細介紹了JS實現(xiàn)進度條動態(tài)加載特效,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • javascript 選擇文件夾對話框(web)

    javascript 選擇文件夾對話框(web)

    web程序開發(fā)中經(jīng)常會遇見選擇文件夾的時候,這對于web程序員是一件麻煩的事情,由于本地安全限制JS不能訪問本地文件,所以選擇文件夾一般都避而不談,筆者在寫一個程序的時候也遇見了同樣的問題,開始嘗試使用JS來遍歷文件,結(jié)果都沒有成功
    2009-07-07
  • JavaScript實現(xiàn)忘記密碼功能的示例代碼

    JavaScript實現(xiàn)忘記密碼功能的示例代碼

    這篇文章主要為大家詳細介紹了如何使用HTML、CSS和JavaScript實現(xiàn)一個完整的忘記密碼功能,文中的示例代碼講解詳細,需要的可以參考一下
    2024-01-01
  • 總結(jié)分享10 個超棒的 JavaScript 簡寫技巧

    總結(jié)分享10 個超棒的 JavaScript 簡寫技巧

    這篇文章主要總結(jié)分享10 個超棒的 JavaScript 簡寫技巧,有合并數(shù)組、克隆數(shù)組、解構(gòu)賦值、模板字面量等技巧,需要的朋友可以參考一下
    2022-06-06
  • JavaScript 中斷請求幾種方案詳解

    JavaScript 中斷請求幾種方案詳解

    這篇文章主要介紹了JavaScript 中斷請求幾種方案詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-09-09

最新評論

博兴县| 山丹县| 白沙| 永和县| 富源县| 浙江省| 福海县| 永修县| 北票市| 公主岭市| 迭部县| 沂南县| 汕头市| 盐源县| 高雄市| 安平县| 红安县| 韶关市| 盐亭县| 成都市| 沙田区| 历史| 阿拉尔市| 观塘区| 皮山县| 杨浦区| 甘孜县| 绵竹市| 酉阳| 长岛县| 工布江达县| 海林市| 贵州省| 通道| 麟游县| 青岛市| 紫云| 道真| 东明县| 吉隆县| 内丘县|