91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript純函數是什么

發布時間:2022-03-21 14:24:03 來源:億速云 閱讀:132 作者:小新 欄目:開發技術

這篇文章主要介紹了JavaScript純函數是什么,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

純函數

純函數是指不依賴于且不改變它作用域之外的變量狀態的函數。
純函數的返回值只由它調用時的參數決定,它的執行不依賴于系統的狀態(執行上下文)。
相同的輸入參數,一定會得到相同的輸出,也就是內部不含有會影響輸出的隨機變量。

不屬于純函數的特點:

  • 更改文件系統

  • 往數據庫插入記錄

  • 發送一個 http 請求

  • 可變數據

  • 打印/log

  • 獲取用戶輸入

  • DOM 查詢

  • 訪問系統狀態

純函數的作用:

  • 可靠性:函數返回永遠和預期一致

  • 可緩存性:因為只要輸入一樣輸出一定一樣,因此可將輸入作為key,輸出作為值,使用對象緩存已經計算的結果

  • 可移植性:因為沒有外部依賴,所以移植到任何環境都可正確運行

  • 可測試性:方便針對函數做單元測試

  • 可并行性:對一些復雜計算,可以并行計算(例如使用nodejs多個子進程同時并行計算多個任務,提高計算速度)

應用場景:

  • 工具函數最好使用純函數

  • 多平臺使用的代碼(nodejs、瀏覽器、微信小程序、native客戶端等)

  • 相對獨立的功能

var a = 1;
// 非純函數
function sum(b) {
 return a + b;
}
// 非純函數
function sum(b) {
 a = 2;
 return b;
}
// 非純函數
function sum(b) {
 return b + Math.random();
}


// 純函數
function sum (b, c) {
 return b + c;
}

感謝你能夠認真閱讀完這篇文章,希望小編分享的“JavaScript純函數是什么”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西华县| 江山市| 厦门市| 姚安县| 汉沽区| 德格县| 万安县| 柏乡县| 霸州市| 锦屏县| 通化市| 江北区| 玛多县| 清丰县| 乐山市| 城步| 专栏| 诸城市| 两当县| 永济市| 年辖:市辖区| 彩票| 陈巴尔虎旗| 全南县| 定陶县| 绥阳县| 德保县| 瑞金市| 尚义县| 庆阳市| 图们市| 宜兰县| 辉县市| 蛟河市| 永寿县| 江阴市| 大英县| 镶黄旗| 潍坊市| 五华县| 容城县|