html自動執行函數,JS 自執行函數原理及用法

js自執行函數,聽到這個名字,首先會聯想到函數。接下來,我來定義一個函數:

function aaa(a,b){

return sum = a + b

}

定義了一個名為aaa的函數,在里面可以計算兩個數的和。如果想執行它,就必須得調用它,并且還得給它傳參:

var aa = aaa(1,2)

這樣就實現了一個函數的定義與調用,通過console.log我們可以看到sum實現了兩個數的相加。

自執行函數是什么?自執行函數就是當它被定義出來,就會自動執行的函數。不需要調用,傳參也很方便。就上面的函數,用自執行函數定義就是這樣:

(function aaa(a,b){

return sum = a + b

;})(1,2)

通過控制臺可以發現sum實現了兩個數的相加。

自執行函數有三種寫法:

1.( function ( “ 參數 ” ) { " 函數方法 " ; } ) ( “ 給參數傳的值 ” )

2.( function ( " 參數 " ) { “ 函數方法 ” ; } ( " 給參數傳的值 " ) )

3.! function ( " 參數 " ) { " 函數方法 " ; } ( " 給參數傳的值 " )

第三種!可以換作其他運算符或者void。

自執行函數是很自私的,它的內部可以訪問全局變量。但是除了自執行函數自身內部,是無法訪問它的。例:

function aaa(a1,b1){

return sum1 = a1 + b1

},

(function bbb(a2,b2){

return sum2 = a2 + b2

;}(),

console.log(aaa)

console.log(bbb)

這是一個函數與一個自執行函數,輸出這兩個函數會發現:函數aaa被全部打印出來,而bbb則報錯。自執行函數相當于一個瓶口朝下的杯子,當定義它的時候,它會傾斜,把杯口露出來,吸收外面的新鮮空氣;當它執行完畢,杯口不再外露,緊閉起來,與外界再無關聯。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/541659.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/541659.shtml
英文地址,請注明出處:http://en.pswp.cn/news/541659.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java reverse_Java Integer類reverse()方法與示例

java reverse整數類reverse()方法 (Integer class reverse() method) reverse() method is available in java.lang package. reverse()方法在java.lang包中可用。 reverse() method is used to returns the value generated by reversing the order of bits in binary 2s comp…

華為鴻蒙系統好在哪,華為鴻蒙2.0可以替代安卓嗎,華為鴻蒙2.0優勢在哪

在華為開發者大會上,華為消費業務CEO 余承東,正式發布鴻蒙OS2.0,并宣布華為鴻蒙OS將全面啟用全場景生態,并將于2020年12月發布手機版。余承東還表示,明年,華為的智能手機將全面升級,以支持鴻蒙操…

Java GregorianCalendar add()方法與示例

GregorianCalendar類的add()方法 (GregorianCalendar Class add() method) add() method is available in java.util package. add()方法在java.util包中可用。 add() method is used to add the given quantity to the specified GregorianCalendar field (fi). add()方法用于…

JVM(三)——對象的訪問定位

JVM(三)——對象的訪問定位創建完對象,到了使用對象的時候,通常聲明一個同類型的引用指向該類型的對象,由這個引用來操作對象的字段、方法等。 Object obj new Object();復制代碼我們的Java程序需要通過棧上的 refere…

html5滑動刪除置頂,html5向左滑動刪除特效

html5向左滑動刪除特效* {padding: 0;margin: 0;list-style: none;}header {background: #f7483b;border-bottom: 1px solid #ccc}header h2 {text-align: center;line-height: 54px;font-size: 16px;color: #fff}.list-ul {overflow: hidden}.list-li {line-height: 60px;bord…

Java Double類hashCode()方法及示例

雙類hashCode()方法 (Double class hashCode() method) hashCode() method is available in java.lang package. hashCode()方法在java.lang包中可用。 hashCode() method is used to return hashcode of the Double-object. hashCode()方法用于返回Double對象的哈希碼。 hashC…

Java DataOutputStream size()方法及示例

DataOutputStream類的size()方法 (DataOutputStream Class size() method) size() method is available in java.io package. size()方法在java.io包中可用。 size() method is used to return the size of this stream or in other words, we can say it returns the value of…

html怎樣讓列表向下移動,Html無序列表ul控件實現行上下移動.

new document // 創建一個ulvar ul document.createElement("ul");ul.id "oList";// 創建divvar div document.getElementById(mergeCase);// 把ul放置到div中div.appendChild(ul);// 遍歷所有的li條目function trace(){var strTest "";for …

創建laravel項目

下載項目到本地 git clone https://github.com/251068550/LaraBlog.gitcompoer安裝 cd LaraBlog composer install如果composer install安裝很慢,推薦安裝國內鏡像 執行 composer config -g repo.packagist composer https://packagist.phpcomposer.com 配置.env文件…

Java ArrayList removeRange()方法與示例

ArrayList類removeRange()方法 (ArrayList Class removeRange() method) removeRange() method is available in java.util package. removeRange()方法在java.util包中可用。 removeRange() method is used to remove the elements whose range is between st_in(start index)…

Spring注釋事務失效及解決辦法

如果帶上事務&#xff0c;那么用annotation方式的事務注解和bean配置&#xff0c;事務會失效&#xff0c;要將service bean配置到xml文件中才行 在主容器中&#xff08;applicationContext.xml&#xff09;&#xff0c;將Controller的注解排除掉 <context:component-scan …

html5畫分形圖形,2.5 繪制透明圖形 - HTML5 Canvas 實戰

對于需要圖形分層的應用&#xff0c;經常需要處理透明度。本節&#xff0c;我們將學習如何使用全局透明度設置圖形的透明度。圖2-5 繪制透明圖形繪制步驟按照以下步驟&#xff0c;在一個不透明的矩形之上&#xff0c;繪制一個透明的圓&#xff1a;1. 定義2D畫布上下文&#xff…

計算機網絡子網劃分_子網劃分和超網| 計算機網絡

計算機網絡子網劃分1)子網劃分 (1) Subnetting) Subnetting is a concept of diving a block of addresses into sub-blocks of addresses. During the era of classful addressing (as it’s obscured now), subnetting was introduced. Say, an organization is granted a la…

html5錄音功能代碼,recorder.js 基于 HTML5 實現錄音功能

recorder.js 基于 HTML5 實現錄音功能2020-06-23 01:49:56recorder.jsmicrophone基于HTML5的錄音功能&#xff0c;輸出格式為mp3文件。前言完全依賴H5原生API所涉及的API&#xff1a;WebRTC、AudioContext、Worker、Video/Audio API、Blob、URL兼容性Chrome、FF、Edge、QQ、360…

data.frame類型數據如何將第一列值替換為行號

data.frame類型數據如何將第一列值替換為行號 row.names(data) <- data[, 1]data <- data[, -1]

html5頁面引入jquery,如何在javascript中引入jQuery?

jquery是一個用來代替JavaScript來快捷書寫前端腳本語言的庫&#xff0c;jquery可以大大的簡化復雜的js代碼&#xff0c;使開發人員專注于實現頁面的效果。jquery的導入方式有兩種&#xff0c;一種是本地導入&#xff0c;一種是從超鏈接導入。方式一&#xff1a;本地導入我們可…

Python字符串| isdecimal()方法與示例

isdecimal() is an in-built method in Python, which is used to check whether a string contains only decimal characters or not. isdecimal()是Python中的內置方法&#xff0c;用于檢查字符串是否僅包含十進制字符。 Note: 注意&#xff1a; Decimal characters contai…

zt:緩存一致性(Cache Coherency)入門 cach coherency

http://www.infoq.com/cn/articles/cache-coherency-primer http://www.cnblogs.com/xybaby/p/6641928.html english: http://www.tuicool.com/articles/BVRNZbV yxr注&#xff1a; 1) 由于曾研究IBM的CPU加速(CAPI)&#xff0c;其提到內存一致性&#xff0c;為了弄清楚其和通…

湖南省普通招生2021高考成績查詢,湖南省2021八省聯考成績可查,附查詢入口及往年分數線...

原標題&#xff1a;湖南省2021八省聯考成績可查&#xff0c;附查詢入口及往年分數線湖南省2021年八省聯考新高考適應性考試成績公布&#xff0c;這次大家考的如何呢&#xff1f;此次成績排名對于考生擇校及志愿填報有一定的參考意義&#xff0c;小盒一時間收集整理相關消息&…

duration java_Java Duration類| plusDays()方法與示例

duration java持續時間類plusDays()方法 (Duration Class plusDays() method) plusDays() method is available in java.time package. plusDays()方法在java.time包中可用。 plusDays() method is used to add the given duration in days to this Duration and return the Du…