欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

簡單分析javascript中的函數(shù)

 更新時間:2016年09月10日 12:01:01   作者:我i愛河東獅  
這篇文章主要為大家詳細介紹了javascript函數(shù),幫助大家更好的理解js函數(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下

在腳本語言JavaScript中,函數(shù)的定義是由事件驅動或者當它被調用時可重復使用的代碼塊。在JavaScript的標準ECMAscript中,把函數(shù)表述為可以隨時隨地運行的語句。我個人是不認同ECMA的說法的,因為函數(shù)只有在發(fā)生調用的時候才會執(zhí)行,否則就是一段毫無生氣的代碼。

我們來具體認識認識函數(shù)。

(一)首先是函數(shù)的定義: 在ECMAscript函數(shù)的定義是 關鍵字function 函數(shù)名( 參數(shù)){主體;return(返回值)};這四部分組成的,但是在腳本語言中函數(shù)的定義卻分為三種方式定義:

形式1:function 函數(shù)名(參數(shù)){主體;返回值};這種定義的方式和ECMAscript的方式一樣;
形式2:var 函數(shù)名=function (參數(shù)){主體;返回值};
形式3:var 函數(shù)名=new Function (參數(shù)){主體;返回值};

在Javascript中只有這三種定義函數(shù)的方式,接下來說說每一種定義方式的使用的注意事項和具體的用法:第一種定義方式是最簡單,最容易理解的,他就是簡簡單單的為我們定義一個函數(shù),供我們在接下來的編程中使用;第二中方式是通過我們構造一個匿名函數(shù),并且把這個匿名函數(shù)的傳遞給一個我們定義的函數(shù)變量來實現(xiàn)的,他在閉包中是很常見的,為的是使在全局域內,我們能使用內層函數(shù),讓我們的函數(shù)形成閉包結構。第三種方式是通過new出一個新的內存空間存放我們的匿名函數(shù),并賦值與我們定義的函數(shù)名,這個函數(shù)是基于我們的匿名函數(shù)創(chuàng)建的。這種方式主要應用在原型里面。

其實通過觀察,我們會發(fā)現(xiàn),好像這三種定義方式之間聯(lián)系很緊密,感覺第三種第一方式好像是前面2種和第三種的組合使用,實事也是你看到的這樣,所以對于這3種定義方式我們知道就行了,知道他們分別什么時候使用就好了。再有,我要說的是這三種定義方式的數(shù)據(jù)類型,是基于基本類型來說的,和基于對象類型的數(shù)據(jù)是一樣的,在基于對象數(shù)據(jù)類型里,我們把函數(shù)稱為對象。當你接觸了對象的定義時,很明顯的發(fā)現(xiàn),他們的定義方式基本上是一樣的。只不過函數(shù)名給稱為對象,定義的形式是很類似的。記住一點,對象就是函數(shù),函數(shù)就是對象。

(二)幾種特殊的函數(shù)
(1) 匿名函數(shù)
所謂的匿名函數(shù),就是沒有函數(shù)名的函數(shù)。這種函數(shù)的有點就是說,它的調用很難,這也就保證了安全性。那么我們應該如何調用匿名函數(shù)呢?來看個例子:


通過把匿名函數(shù)作為參數(shù)傳遞給add變量,我們就可以調用我們的匿名函數(shù)了。

(2)自調函數(shù)
自調函數(shù)也是匿名函數(shù)的一種,它沒有作為參數(shù)傳遞給其他變量,也沒有自己的函數(shù)名,也就是說它不能被別人調用,只能自己調用自己。

圖中寫的方式就是自調函數(shù)的使用,這個函數(shù)被兩個小括號包圍著,第一個小括號的作用是封裝,把我們編寫的匿名函數(shù)封裝在其中,第二個小括號就是調用了,我們還可以給他初始化,就像第二個自調函數(shù)的寫法一樣。  

其實自調函數(shù)主要用于實現(xiàn)一次性的功能,就是說在執(zhí)行周期內只運行一次,所以在我們進行網(wǎng)頁的初始化時,可以考慮使用自調函數(shù)。

(3)回調函數(shù)

回調函數(shù),就是把自身作為返回值或者實參傳遞的這樣的函數(shù)。

函數(shù)a()和b()就是回調函數(shù)的應用。

(4)內部函數(shù)

這個就是一句話了,就是存在于函數(shù)內部的一類函數(shù)。

(三)函數(shù)的優(yōu)點

1.大量重復的語句寫在函數(shù)里面,可以重復的調用;
2.簡化編程語言,讓編程變得模塊化;
3.優(yōu)化代碼結構;

(四)注意事項 

1.函數(shù)的書寫時,可以先調用,在書寫;因為JavaScript在程序開始時,會對我們所有的函數(shù)和變量進行隱式的聲明;
2.函數(shù)不會自己執(zhí)行,只有在發(fā)生函數(shù)調用時,才會分配空間,才能使用;
3.函數(shù)名相同時,默認執(zhí)行寫在下面的函數(shù);
 4.函數(shù)名若有一個單詞構成,則首字母小寫,若有多個單詞構成,第一個單詞后其他單詞首字母大寫;

(五)函數(shù)的變量域

1.全局變量
寫在全局域的變量稱為全局變量;
2.局部變量
定義在函數(shù)內部,并用var 聲明的變量稱為局部變量;如果定義在函數(shù)內部,但未用var 聲明,則看做是全局變量。

我們要清楚的知道,學習JavaScript語言就是學習各種各樣的函數(shù),所以對于函數(shù)的理解一定深刻一些,不然在以后的學習過程中,我們會遇到各種函數(shù)的嵌套啊,什么的各種函數(shù)糅雜在一起,就會更加的理不清頭緒,整的自己那袋混亂的。這篇簡簡單單的文章,是我對函數(shù)的一些理解,希望我的這些淺見,能對你理解函數(shù)有一些幫助。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • js設置function參數(shù)默認值(適合沒有傳參情況)

    js設置function參數(shù)默認值(適合沒有傳參情況)

    div+css模擬js信息框的類庫時遇到一個問題當沒有傳遞參數(shù)過去時自動使用提示信息作為窗口標題,具體的實現(xiàn)如下
    2014-02-02
  • 關于JavaScript命名空間的一些心得

    關于JavaScript命名空間的一些心得

    這篇文章主要介紹了關于JavaScript命名空間的一些心得,分別給出了頂級、多級命名空間的例子,需要的朋友可以參考下
    2014-06-06
  • 微信小程序模板和模塊化用法實例分析

    微信小程序模板和模塊化用法實例分析

    這篇文章主要介紹了微信小程序模板和模塊化用法,結合實例形式分析了微信小程序中的模板與模塊化概念與簡單使用技巧,需要的朋友可以參考下
    2017-11-11
  • 淺談JavaScript字符串與數(shù)組

    淺談JavaScript字符串與數(shù)組

    本文給大家簡單介紹了下javascript中的字符串和數(shù)組,都是些十分基礎的知識,小伙伴們要學好javascript,一定要把這2點理解清楚。
    2015-06-06
  • 原生js+css調節(jié)音量滑塊

    原生js+css調節(jié)音量滑塊

    這篇文章主要介紹了原生js+css調節(jié)音量滑塊,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-01-01
  • js 動態(tài)修改css文件用到了cssRule

    js 動態(tài)修改css文件用到了cssRule

    js 動態(tài)修改css文件,循環(huán)用的underscore,在使用cssRule只能使用cssRule.style.padding=0px,詳細示例如下
    2014-08-08
  • js設計模式之單例模式原理與用法詳解

    js設計模式之單例模式原理與用法詳解

    這篇文章主要介紹了js設計模式之單例模式原理與用法,結合實例形式詳細分析了javascript單例模式的概念、原理、用法及相關操作注意事項,需要的朋友可以參考下
    2019-08-08
  • 使用JS實現(xiàn)圖片輪播的實例(前后首尾相接)

    使用JS實現(xiàn)圖片輪播的實例(前后首尾相接)

    下面小編就為大家?guī)硪黄褂肑S實現(xiàn)圖片輪播的實例(前后首尾相接)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • JS取數(shù)字小數(shù)點后兩位或n位的簡單方法

    JS取數(shù)字小數(shù)點后兩位或n位的簡單方法

    下面小編就為大家?guī)硪黄狫S取數(shù)字小數(shù)點后兩位或n位的簡單方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • 原生JS實現(xiàn)酷炫分頁效果

    原生JS實現(xiàn)酷炫分頁效果

    這篇文章主要為大家詳細介紹了原生JS實現(xiàn)酷炫分頁效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08

最新評論