LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

15 個 JavaScript 簡寫技巧,效率提升 70%

admin
2025年1月7日 21:49 本文熱度 198

自從ES6問世以來,JavaScript的語法變得更加簡潔和易讀。下面就由前端君來給大家好好講講,如何用一些簡寫技巧來讓JavaScript代碼更加優雅。

1. 箭頭函數

這個可是簡化函數表達式的神器,而且它沒有自己的this,用起來特別方便。

// 以前寫法
var greet = function(name{
  console.log("Hello, " + name);
};

// 現在簡化后
const greet = name => console.log(`Hello, ${name}`);

2. 默認參數

給函數參數設置默認值,這樣調用函數時就不用擔心忘記傳參數了。

function createUser(name = "Guest", age = 30{
  // ...
}

3. 模板字符串

用反引號來定義字符串,不僅支持多行文本,還能直接嵌入變量,簡直是太方便了。

const message = `Hello,
My name is ${name}`
;

4. 解構賦值

從數組或對象中直接提取數據賦值給變量,省去了中間的步驟。

對象解構:

const { prop1, prop2 } = obj;

數組解構:

const [first, second] = arr;

5. 展開運算符

這個運算符可以用來復制數組、合并數組或對象,用法超級靈活。

const newArray = [...oldArray];
const newObj = { ...obj1, ...obj2 };

6. 計算屬性名

允許我們用表達式作為對象的鍵名,這樣就能動態地設置鍵名了。

const keyName = "dynamicKey";
const obj = {
  [keyName]: "value"
};

7. 簡化的對象方法定義

定義對象的方法時,可以省略function關鍵字,讓代碼更加簡潔。

const obj = {
  method() {
    // 方法體
  }
};

8. 類的簡寫

在類中定義方法時,也可以省略function關鍵字,還能用static關鍵字定義靜態方法,真是省心省力。

class MyClass {
  constructor() {}
  method() {}
  static staticMethod() {}
}

9. 簡單的getter/setter

簡化了對象屬性的讀取和設置,用起來特別直觀。

class Person {
  constructor(age) {
    this._age = age;
  }

  get age() {
    return this._age;
  }

  set age(value) {
    this._age = value;
  }
}

10. for...of循環

遍歷可迭代對象(比如數組、字符串、Map、Set等)的元素,用起來特別方便。

for (let value of iterable) {
  console.log(value);
}

11. Promise 和 async/await

這個組合真是異步操作的救星,讓咱們可以用同步的方式寫出異步代碼,特別是async/await避免了煩人的回調地獄。

async function fetchData({
  try {
    let response = await fetch(url);
    let data = await response.json();
    console.log(data);
  } catch (error) {
    console.error('Error:', error);
  }
}

12. 省略分號

雖然這不是推薦的做法,但JavaScript會自動插入分號,在某些情況下可以省略它們,不過還是建議大家為了代碼的可讀性,盡量不要省略分號。

13. 運算符簡寫

  • 三元運算符:代替簡單的if...else語句,讓代碼更加簡潔。

    const result = condition ? trueValue : falseValue;
  • 邏輯運算符賦值&&=||=??=分別代表邏輯與賦值、邏輯或賦值、空值合并賦值。

    let x;
    x ||= "default"// 如果x是falsey,則賦值"default"
  • 空值合并運算符??用于處理nullundefined

    const userSetting = userPref ?? 'default';

14. import/export模塊化

簡化了模塊的導入導出,讓代碼的組織更加清晰。

// 導入所有成員
import * as lib from './lib';

// 導出多個成員
export { member1, member2 };

// 默認導出
export default class MyClass {};

15. Rest 參數

這個參數可以收集剩余的參數到一個數組中,特別適合處理可變數量的參數。

function sum(...args{
  return args.reduce((a, b) => a + b, 0);
}

以上這些技術都能幫助我們寫出更加簡潔、高效的JavaScript代碼。不過,咱們在追求代碼簡潔的同時,也一定要注意保持代碼的可讀性和維護性,大家在實際開發中,還是要根據具體情況來選擇合適的簡寫方式哦!


閱讀原文:原文鏈接


該文章在 2025/1/8 14:54:31 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
中文字幕丝袜四区 | 亚洲中文字幕精品一区二区 | 亚洲成年轻人天堂久久 | 婷婷开心色四房播播 | 亚洲日韩精品专区 | 五月六月婷婷国产在线 |