成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

五個JavaScript代碼優化優秀實踐

開發 前端
在JavaScript中,如果類提升使用就需要在調用類之前聲明它。這一點與函數不一樣。在使用JavaScript中的類時,應該理解并遵循這一基本原則。

1.規范變量和函數的命名

首先,應該制定變量、函數和其他代碼結構的命名約定。這不僅與代碼可讀性有關,而且還極大地影響代碼的調試效率。

建議對變量和函數使用駝峰大小寫(例如,myVariableName)和類的Pascal大小寫(例如,MyClassName)。


// ? 隨意的變量名:
let a = 'John';
let fn = () => console.log('Hello');

// ? 駝峰變量名:
let firstName = 'John';
let sayHello = () => console.log('Hello');

2.使用速記技術注意事項

雖然速記技術使我們編寫代碼更快、更整潔,但一定要注意正確使用,因為它們更簡短,更需要開發者清晰理解邏輯,否則可能會產生意想不到的結果。為了避免這種不可預見的結果,有必要查閱文檔,研究相關的JavaScript代碼示例,并進行完整測試。

// ? 傳統的函數定義:
function square1 (num) {
  return num * num
}
// ? 使用速記技術:
const square2 = num => num * num

// ? 大代碼段:
let x

if (y) {
  x = y
} else {
  x = 'default'
}

// ? 更簡潔的代碼:
let x = y || 'default'

3.遵循SoC原則

為了代碼的簡潔,建議避免使用style直接修改樣式。這個原則被稱為關注點分離(SoC),建議使用classList API添加或刪除類,同時使用CSS定義樣式規則。    

通過遵循這種方法,CSS負責樣式化任務,而JavaScript專注于處理應用程序中的其他功能。SoC的概念其實已經擴展到JavaScript之外的場合,并被作為一種最佳實踐來隔離功能,防止不同技術之間的混合使用。

在javascript處理CSS相關的任務時,應該避免Style直接修改樣式模式。 

// ? 避免操作styling:
let element = document.getElementById('my-element')
element.style.color = 'red'

// ? 使用classList操作樣式:
let element = document.getElementById('my-element')
element.classList.add('my-class')

4.理解類的提升

在JavaScript中,如果類提升使用就需要在調用類之前聲明它。這一點與函數不一樣。在使用JavaScript中的類時,應該理解并遵循這一基本原則。

// ? 錯誤:定義類之前就調用類:
const hat = new Hat('Red', 1000)
hat.show()
class Hat {
  constructor (color, price) {
    this.color = color
    this.price = price
  }
  show () {
    console.log(`This ${this.color} hat costs $${this.price}`)
  }
}

// ? 正確:在定義之后調用類:
class Hat {
  constructor (color, price) {
    this.color = color
    this.price = price
  }
  show () {
    console.log(`This ${this.color} hat costs $${this.price}`)
  }
}

const hat = new Hat('Red', 1000)

5.避免代碼中的過度嵌套

過度嵌套代碼既不專業又導致代碼非常混亂。例如在try-catch塊中進行if-else語句,if-else語句中又嵌套一個for循環,等等。結果,代碼變得混亂,使得理解或錯誤定位變得十分困難。調試這樣的代碼猶如小貓解毛線。為避免過多的嵌套,實現更干凈、更有組織的代碼結構至關重要。


// ? 過度嵌套
function checkNumber (num) {
  if (num > 0) {
    console.log('Number is positive.')
  } else {
    if (num < 0) {
      console.log('Number is negative.')
    } else {
      console.log('Number is zero.')
    }
  }
}

// ? 使用return 替代else
function checkNumber (num) {
  if (num > 0) {
    console.log('Number is positive.')
    return
  }

  if (num < 0) {
    console.log('Number is negative.')
    return
  }

  console.log('Number is zero.')
}
責任編輯:趙寧寧 來源: andflow
相關推薦

2021-05-26 08:50:37

JavaScript代碼重構函數

2023-07-03 12:09:38

云日志云服務

2021-12-04 23:10:02

Java代碼開發

2022-10-10 14:53:00

云安全云計算云平臺

2021-06-25 14:50:21

DevSecOps安全 DevOps

2023-04-14 08:10:59

asyncawait

2022-11-28 23:48:06

JavaScript編程語言技巧

2020-02-25 20:55:20

JavaScript開發 技巧

2022-07-03 17:10:15

JavaScript編程語言開發

2023-05-16 15:27:31

2024-01-04 16:21:37

數字孿生供應鏈IT價值

2022-03-05 23:08:14

開源軟件開發技術

2024-06-12 13:57:00

2024-07-05 13:59:26

2020-02-25 15:27:37

JavaScriptTypeScript瀏覽器

2022-01-07 08:00:00

Node.js開發Web

2024-06-14 15:18:39

2022-05-13 14:28:03

云原生權限云原生

2023-04-20 11:59:03

開源PatternFly

2021-05-31 09:48:24

網絡釣魚滲透測試網絡安全
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久国产精品亚洲 | 欧美 日韩 中文 | 亚洲最色网站 | 日韩成人影院 | 网站黄色在线 | 欧美a在线看 | 国产成人精品午夜 | 日韩欧美二区 | 国产国产精品久久久久 | 激情影院久久 | 欧美久久综合 | 91国在线 | 伊人免费网 | 91久久久精品国产一区二区蜜臀 | 国产伦一区二区三区久久 | 亚洲成人午夜电影 | 欧美精品一二区 | 亚洲精品国产第一综合99久久 | 懂色av一区二区三区在线播放 | 日韩电影中文字幕在线观看 | 久久精品一区二区三区四区 | 亚洲成人在线免费 | 在线免费黄色小视频 | 在线观看日韩精品视频 | 欧美日韩在线高清 | 欧美精品一区二区在线观看 | 草草视频在线播放 | av在线三级| 91热爆在线观看 | 久久亚洲国产 | 国家一级黄色片 | 在线久草| 日韩国产欧美一区 | 国产成人福利在线观看 | 亚洲第一成年免费网站 | 国产wwwcom| 日韩av一区二区在线观看 | 成人在线一区二区 | 日韩成人免费视频 | 欧美精品成人 | 免费视频一区二区 |