用了那麼久的函數,你知道函數是怎麼調用的嗎??

来源:http://www.cnblogs.com/dengting/archive/2016/08/20/5789735.html
-Advertisement-
Play Games

4種調用函數方法 1.作為函數; 2.作為方法; 3.作為構造函數; 4.通過他們的call()和apply()方法間接調用。 1、函數調用 1、函數調用 var date = Date(); var m = max(a,b,c); 在一個調用中每個參數表達式(圓括弧之間的部分)都會計算出一個值, ...


4種調用函數方法 1.作為函數; 2.作為方法; 3.作為構造函數; 4.通過他們的call()和apply()方法間接調用。  
  • 1、函數調用
var date = Date(); var m = max(a,b,c); 在一個調用中每個參數表達式(圓括弧之間的部分)都會計算出一個值, 計算結果作為參數傳遞給另一個函數。  
  • 2、方法調用
一個方法無非就是保存在一個對象的屬性里的JavaScript函數。如果有一個函數f和對象o,則可以用下麵的代碼給對象o定義一個名為m()的方法: o.m = f; 給對象o定義了方法m(),調用它時就這樣 o.m(); 或者m()需要兩個實參,調用起來則這樣: o.m(x , y); 上面的代碼是一個調用表達式:他包括一個函數表達o.m,以及兩個實參表達式式x和y。 該函數被當做一個方法,而不是作為一個普通函數來調用。  
  • 3、構造函數調用
v如果函數或者方法調用之前帶有關鍵字new,他就構成構造函數調用。 如果構造函數沒有形參,都可以省略圓括弧,比如下麵兩行代碼是等價的。 var o  =  new Object(x,y); var o  = new  Object; 構造函數調用創建一個新的空對象,這個對象繼承來自構造函數prototype的屬性。構造函數初始化這個新創建的對象,並將這個對象用作其調用上下文,因此構造函數可以使用this關鍵字來引用這個新創建的對象。 構造函數通常不使用return關鍵字,他們通常初始化新對象,當執行完畢函數體時他會顯示返回,這種情況構造函數表達式的計算結果就是這個新對象的值。然而如果構造函數顯示地使用return語句返回一個對象,那麼調用表達式的值就是這個對象。如果使用return語句內膽是沒有指定返回值,那麼這是將忽略返回值,同事使用這個新對象作為調用結果。  
  • 4、間接調用
JavaScript中的函數也是對象,和其他JavaScript對象沒什麼兩樣。函數對象可以包含方法,其中兩個call()和array()開頭用來簡介的調用函數,這兩個方法都允許顯示指定所需要的this值。call()方法使用它自由的實參列表作為函數的實參,apply()方法則要求以數組的形式傳入參數。    初入js,希望學習的小伙伴能夠合作交流!!    
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 4.選擇與分組 (1).分組 字元組[]:表示匹配若幹個字元之一 字元組可以淺顯的理解為一些字元的組合,字元組與普通字元的區別在於:abc普通字元表示匹配a接下來b接下來c而字元組[abc]表示在同一位置匹配a或者b或者c;由於字元組本身的含義也決定了可以將這個字元組看成是一個普通的特殊字元。 普通 ...
  • 前言 在還未接觸webpack,就有幾個疑問: 1. webpack本質上是什麼? 2. 跟非同步模塊載入有關係嗎? 3. 可否生成多個文件,一定是一個? 4. 被引用的文件有其他非同步載入模塊怎麼辦? 在學習webpack時,也有幾個疑問: 1. webpack有哪些常用的插件? 2. 常用的Load ...
  • 今天我又寫了個很酷的實例:星級評分系統(可自定義星星個數、顯示信息) 使用預設值5個星星,預設信息 `var msg = [........]; sufuStar.star(10,msg);`自定義星星個數為10、顯示信息msg格式參考預設值,條數必須和星星個數一致; 自己實現一些實例,有個好處,能 ...
  • 最近在學習javascript的函數,函數是javascript的一等對象,想要學好javascript,就必須深刻理解函數。本人把思路整理成文章,一是為了加深自己函數的理解,二是給讀者提供學習的途徑,避免走彎路。內容有些多,但都是筆者對於函數的總結。 1.函數的定義 1.1:函數聲明 1.2:函數 ...
  • JavaScript基礎 JavaScript是一門編程語言,瀏覽器內置了JavaScript語言的解釋器,所以在瀏覽器上按照JavaScript語言的規則編寫相應代碼之,瀏覽器可以解釋並做出相應的處理。 一、基本知識 (一)、存在形式 1、JavaScript代碼存在形式 2、JavaScript ...
  • JavaScript作用域 JavaScript作用域一直是前端開發的難題,現在只要用五句話就可解決。 一、“JavaScript中無塊級作用域” 在Java或C#中存在塊級作用域,即:大括弧也是一個作用域。 public static void Main() { if(1==1){ string ...
  • 相容IE6+,因IE6、IE7、IE8不支持`Array.prototype.indexOf()`和`String.prototype.trim()`,分別用`Polyfill`實現支持。 ...
  • <參考文檔> 1、什麼是? DOM的作用:提供了一種動態的操作HTML元素的方法。 jQuery是一個優秀的js庫。用來操作HTML元素的工具。 jQuery和DOM關係:DOM--樹。jQuery是多個DOM模型的集合。 jQuery設計核心理念:write less,do more; DOM獲取 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...