自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

新 JavaScript 管道操作符:將任何內(nèi)容轉(zhuǎn)化為單行代碼

開發(fā) 前端
管道操作符讓代碼更加清晰直觀,是 JavaScript 代碼優(yōu)化的一大利器。雖然目前還在提案階段,但通過 Babel 已經(jīng)可以嘗鮮,值得在項目中嘗試使用!

在傳統(tǒng)寫法中,代碼常常是這樣的:

圖片圖片

使用管道操作符后,可以寫成:

圖片圖片

這種寫法干凈利落,徹底告別臨時變量,也不用再為命名傷腦筋。

現(xiàn)有解決方案的問題

1. 重用變量

應盡量避免使用冗長的變量,這比重復使用短名變量更有利于壓縮代碼:

圖片圖片

這種寫法存在幾個問題:

  • 變量值不可預測
  • 需要追溯賦值歷史
  • 代碼可讀性差
  • 難以維護

與管道運算符不同的是,我們無法確定變量是否總是包含我們在任何給定點上設置的值;我們需要爬升作用域來查找重新賦值。我們本可以在代碼的較早處使用_,但它在代碼各處的值是無法保證的。

圖片圖片

現(xiàn)在我們使用的只是下劃線,所以如果不查看這些重賦值的右側,你就無法快速知道變量的類型,除非你有一個像 VS Code 這樣的智能編輯器(不過我想你可以說這并不重要,因為它們應該是 "臨時 "的--至少在它們不是之前是這樣?。?/p>

那我們?yōu)槭裁床槐荛_這些臨時下劃線呢?

2. 嵌套調(diào)用

圖片圖片

這種寫法:

  • 閱讀順序不直觀
  • 難以修改和調(diào)試
  • 容易出錯

管道運算符大大優(yōu)于其他所有方法,它既能讓我們擺脫臨時變量的困擾,又具有可讀性。它就是為此而設計的。

圖片圖片

這里的%只存在于這一特定管道中。

3. 鏈式調(diào)用的局限

圖片圖片

鏈式調(diào)用雖好,但有局限:

  • 必須對象支持鏈式設計
  • 不支持生成器和異步操作
  • 不能混用普通函數(shù)

對于對象外的生成器方法、異步/等待和函數(shù)/方法調(diào)用,它的效果并不好:

圖片圖片

但所有這些和更多的功能都需要管道操作符,甚至對象字面和asyncimport函數(shù)。

圖片圖片

立即使用管道操作符

通過 Babel 插件可以現(xiàn)在就使用這個特性:

npm install @babel/plugin-proposal-pipeline-operator

配置文件:

{
  "plugins": [
    ["@babel/plugin-proposal-pipeline-operator", { 
      "proposal": "hack" 
    }]
  ]
}

圖片圖片

管道操作符讓代碼更加清晰直觀,是 JavaScript 代碼優(yōu)化的一大利器。雖然目前還在提案階段,但通過 Babel 已經(jīng)可以嘗鮮,值得在項目中嘗試使用!


責任編輯:武曉燕 來源: 大遷世界
相關推薦

2009-07-21 09:31:00

Scala操作符

2011-04-08 16:26:14

JavaScript

2023-04-24 16:08:09

JavaScripHTMLPDF

2020-03-03 15:42:33

Python字典合并代碼

2010-07-14 14:55:07

Perl操作符

2009-08-19 17:26:28

C# 操作符

2021-10-31 18:59:55

Python操作符用法

2024-09-20 08:36:22

2021-04-18 18:42:39

機器學習數(shù)據(jù)可操作見解

2023-03-13 16:08:00

JavaScript數(shù)組函數(shù)

2010-07-19 11:00:24

Perl操作符

2010-07-14 14:30:31

Perl操作符

2009-09-15 17:16:58

LINQ查詢操作符

2009-09-16 09:09:23

Linq Contai

2010-07-14 14:18:51

Perl操作符

2012-02-06 09:13:23

LINQ

2010-01-28 11:16:28

C++操作符

2022-11-28 23:44:26

JavaScript技巧程序員

2025-03-11 07:30:00

雙問號操作符JavaScript開發(fā)

2018-06-12 15:07:57

IT
點贊
收藏

51CTO技術棧公眾號