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

JavaScript 函數(shù)的定義-調(diào)用、注意事項

 更新時間:2017年04月16日 07:58:08   投稿:mdxy-dxy  
這篇文章主要介紹了JavaScript 函數(shù)的定義-調(diào)用、注意事項,需要的朋友可以參考下

函數(shù)定義

函數(shù)語句定義

function(a,b){
 return a+b; 
}

表達式定義

var add = function(a,b){return a+b};

//函數(shù)表達式可以包含名稱,這在遞歸時很有用 var f = function fact(x){ if(x<=1) {return 1; }else { return x*faxt(x-1); } }

以表達式方式定義的函數(shù),函數(shù)的名稱是可選的。如果函數(shù)定義表達式包含名稱,函數(shù)的局部作用域?qū)粋€綁定到函數(shù)對象的名稱,實際上,函數(shù)的名稱將成為函數(shù)內(nèi)部的一個局部變量

函數(shù)命名規(guī)范

1.like_this()第一個字符為小寫,當(dāng)包含多個單詞時候,單詞以下劃線分割

2.likeThis()第一個字符為小寫,當(dāng)包含多個單詞時候,除第一個單詞以外的單詞首字母使用大學(xué)字母

3.內(nèi)部函數(shù)或私有函數(shù),通常以一條下劃線為前綴

注:函數(shù)聲明語句‘被提前到外部腳本或外部函數(shù)作用于頂部,所以可以被在它定義之前出現(xiàn)的代碼所調(diào)用

以表達式方式定義函數(shù)前必須把它賦值給一個變量。所以表達式方式定義的函數(shù)在定義之前是無法調(diào)用的

函數(shù)返回值

  • return語句返回函數(shù)的值給調(diào)用者。
  • return語句沒有,則它返回undefined

 嵌套函數(shù)

  • 嵌套函數(shù)可以訪問他們的函數(shù)的參數(shù)和變量
  • 但是嵌套函數(shù)不能出現(xiàn)在循環(huán)、條件判斷,或者try/cache/finally/with語句中

函數(shù)調(diào)用

  • 作為函數(shù)
  • 作為方法
  • 作為構(gòu)造函數(shù)
  • 通過他們的call()和apply()方法間接調(diào)用

作為函數(shù)調(diào)用

add(1,2)

 根據(jù)ECMAScript3和非嚴(yán)格的ECMAScript5對函數(shù)調(diào)用的規(guī)定,調(diào)用上下文(this的值)是全局對象。然而在嚴(yán)格模式下,調(diào)用上下文則是undefined。

//定義一個函數(shù)且調(diào)用一個函數(shù)來確定當(dāng)前腳本運行是否為嚴(yán)格模式
 var strict = (function(){return this;}());

作為方法調(diào)用

var o = {
 m:1,
 n:2,
 add:function(){
  this.result = this.m+this.n;
  }
}

方法調(diào)用和函數(shù)調(diào)用的一個重大區(qū)別。----調(diào)用上下文

o.add() add的調(diào)用上下文為o,即:this
o.add() 等同于o['add']()
方法鏈:當(dāng)方法并不需要返回值時候,最好直接返回this
this為一個關(guān)鍵字,不是變量,也不是屬性名。JavaScript語法不允許給this賦值
和變量不同,關(guān)鍵字this沒有作用于的限制,嵌套的函數(shù)不會從調(diào)用它的函數(shù)中繼承this,如果想訪問外部函數(shù)的this,var self= this;保存在變量中
如果嵌套函數(shù)作為函數(shù)調(diào)用,其this的值指向調(diào)用它的對象。如果作為函數(shù)調(diào)用,this不是全局對象(非嚴(yán)格模式),就是undefined(嚴(yán)格模式)

構(gòu)造函數(shù)調(diào)用

var o = new Object();

構(gòu)造函數(shù)調(diào)用和普通函數(shù)調(diào)用以及方法調(diào)用在實參處理。調(diào)用上下文和返回值等方面都有不同。

凡是沒有形參的構(gòu)造函數(shù)調(diào)用都可以省略圓括號。

var o = new Object();
var o = new Object;
//等價

構(gòu)造函數(shù)調(diào)用創(chuàng)建一個新的空對象,這個對象繼承自構(gòu)造函數(shù)的prototype屬性,這個函數(shù)試圖初始化這個新創(chuàng)建的對象,病將這個對象做為上下文,因此構(gòu)造函數(shù)可以使用this關(guān)鍵字來引用這個新創(chuàng)建的對象。

new o.m() 調(diào)用的上下文并不是o.
構(gòu)造函數(shù)并不使用return。如果構(gòu)造函數(shù)顯示的使用return語句返回一個對象,那么調(diào)用表達式的值就是這個對象。如果構(gòu)造函數(shù)但并沒有返回值,或者返回一個原始值,那么就會忽略返回值,同時使用新對象作為返回結(jié)果。

間接調(diào)用

call()
appy()

相關(guān)文章

  • 動態(tài)讀取JSON解析鍵值對的方法

    動態(tài)讀取JSON解析鍵值對的方法

    這篇文章主要介紹了動態(tài)讀取JSON解析鍵值對的方法,需要的朋友可以參考下
    2014-06-06
  • Javascript判斷對象是否相等實現(xiàn)代碼

    Javascript判斷對象是否相等實現(xiàn)代碼

    想判斷2個js對象,是不是所有完全相同在表單頁面應(yīng)用是很常見的,接下來分享一段判斷代碼,感興趣的你可以參考下哈,希望可以幫助到你
    2013-03-03
  • js實現(xiàn)網(wǎng)頁右上角滑出會自動消失大幅廣告的方法

    js實現(xiàn)網(wǎng)頁右上角滑出會自動消失大幅廣告的方法

    這篇文章主要介紹了js實現(xiàn)網(wǎng)頁右上角滑出會自動消失大幅廣告的方法,是javascript廣告特效的典型應(yīng)用,非常具有實用價值,需要的朋友可以參考下
    2015-02-02
  • js數(shù)據(jù)類型以及其判斷方法實例

    js數(shù)據(jù)類型以及其判斷方法實例

    這篇文章主要給大家介紹了關(guān)于js數(shù)據(jù)類型以及其判斷方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Bootstrap CSS組件之按鈕組(btn-group)

    Bootstrap CSS組件之按鈕組(btn-group)

    這篇文章主要為大家詳細(xì)介紹了Bootstrap CSS組件之按鈕組(btn-group),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • JavaScript插件化開發(fā)教程(六)

    JavaScript插件化開發(fā)教程(六)

    本文是javascript插件化開發(fā)系列教程的第六篇文章,還是重點對上一篇文章不足的地方進行改進重構(gòu),逐步分析讓大家能有一個新的認(rèn)識,希望小伙伴們能夠喜歡。
    2015-02-02
  • JavaScript實現(xiàn)HTML導(dǎo)航欄下拉菜單

    JavaScript實現(xiàn)HTML導(dǎo)航欄下拉菜單

    這篇文章主要為大家詳細(xì)介紹了JavaScript實現(xiàn)HTML導(dǎo)航欄下拉菜單,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • JavaScript利用img實現(xiàn)前端頁面埋點功能

    JavaScript利用img實現(xiàn)前端頁面埋點功能

    做數(shù)據(jù)分析的時候需要獲取足量的有效數(shù)據(jù),這個時候就需要我們在前端頁面埋點。如何來實現(xiàn)一個前端埋點功能,本文就帶你上手試試
    2022-06-06
  • 用js實現(xiàn)下載遠程文件并保存在本地的腳本

    用js實現(xiàn)下載遠程文件并保存在本地的腳本

    //將常用的vbs下載者改成js版了。本來想用jsc.exe編譯,可是不成功。jsc.exe不認(rèn)WScript
    2008-05-05
  • 使用js原生實現(xiàn)年份輪播選擇效果實例

    使用js原生實現(xiàn)年份輪播選擇效果實例

    這篇文章主要給大家介紹了關(guān)于如何使用js原生實現(xiàn)年份輪播選擇效果的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01

最新評論

济阳县| 洱源县| 阿尔山市| 横峰县| 乐都县| 屯留县| 罗源县| 威宁| 于都县| 湖南省| 株洲县| 叙永县| 琼结县| 临夏县| 武乡县| 梅州市| 和田市| 霞浦县| 手游| 庆城县| 子洲县| 耒阳市| 开封市| 安平县| 淮安市| 贵州省| 遂昌县| 郁南县| 梁山县| 皮山县| 怀柔区| 奇台县| 灵石县| 贵溪市| 桓台县| 松桃| 客服| 武强县| 桂林市| 宜昌市| 安丘市|