日韩欧美人妻无码精品白浆,夜夜嗨AV免费入口,国产欧美官网在线看,高校回应聋哑女生因长相完美被质疑

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

50個常用的 JavaScript 腳本技巧匯總

admin
2025年6月4日 17:51 本文熱度 73

在日常開發(fā)中,JavaScript 是我們繞不開的核心語言。無論你是前端開發(fā)、全棧工程師,還是剛?cè)腴T的初學(xué)者,掌握一些實用的 JavaScript 技巧,不僅能大幅提升開發(fā)效率,還能讓你的代碼更加優(yōu)雅、簡潔。

下面整理了 50 個常用且高頻的 JavaScript 技巧,涵蓋數(shù)組、對象、函數(shù)、DOM 操作等多個實戰(zhàn)場景,每個技巧都配有簡潔的示例代碼,拿來就能用,快來查漏補缺吧!

一.基礎(chǔ)技巧

1.使用??代替||處理 null/undefined

const name = null;console.log(name ?? 'Guest'); // 'Guest'

2.使用?.安全訪問嵌套屬性

const user = {};console.log(user.address?.city); // undefined,不報錯

3.轉(zhuǎn)換為布爾值

const loggedIn = !!user; // true 或 false

4.數(shù)字轉(zhuǎn)字符串 / 字符串轉(zhuǎn)數(shù)字

String(123); // '123'Number("456"); // 456

5.使用typeof檢查變量類型

console.log(typeof 42); // 'number'

二、數(shù)組技巧

6.去重數(shù)組

const nested = [1, [2, [3]]];nested.flat(2); // [1, 2, 3]

7.查找最大值/最小值

Math.max(...[123]); // 3Math.min(...[123]); // 1

8.打亂數(shù)組順序

const arr = [123];arr.sort(() => Math.random() - 0.5);

9.生成固定長度數(shù)組

Array.from({ length5 }, (_, i) => i + 1); // [1, 2, 3, 4, 5]

10.數(shù)組扁平化

const nested = [1, [2, [3]]];nested.flat(2); // [1, 2, 3]

11.數(shù)組分組

const groupBy = (arr, fn) =>  arr.reduce((acc, val) => {    const key fn(val);    (acc[key] = acc[key] || []).push(val);    return acc;  }, {});

三、對象技巧

12.合并對象

const merged = { ...obj1, ...obj2 };

13.對象鍵值互換

const obj = { a1b2 };const flipped = Object.fromEntries(  Object.entries(obj).map(([k, v]) => [v, k]));

14.從對象中提取部分屬性

const { a, b } = obj;

15.動態(tài)屬性名

const key = "name";const user = { [key]: "Tom" };

16.刪除對象中 falsy 值

Object.fromEntries(Object.entries(obj).filter(([k, v]) => v));

四、函數(shù)技巧

17.默認(rèn)參數(shù)

function greet(name = 'Guest') {  console.log(`Hello, ${name}`);}

18.箭頭函數(shù)簡寫

const double = x => x * 2;

19.立即執(zhí)行函數(shù)(IIFE)

(() => {  console.log("Executed!");})();

20.函數(shù)緩存(記憶化)

const memo fn => {  const cache = {};  return x => cache[x] || (cache[x] = fn(x));};

21.函數(shù)節(jié)流(throttle)

function throttle(fn, delay) {  let last = 0;  return (...args) => {    const now = Date.now();    if (now - last > delay) {      last = now;      fn(...args);    }  };}

22.函數(shù)防抖(debounce)

function debounce(fn, delay) {  let timer;  return (...args) => {    clearTimeout(timer);    timer = setTimeout(() => fn(...args), delay);  };}

五、時間處理技巧

23.獲取當(dāng)前時間戳

Date.now(); // 或 +new Date()

24.格式化時間

new Date().toLocaleString(); 

25.延遲執(zhí)行

setTimeout(() => console.log("Hi"), 1000);

26.每秒執(zhí)行

const interval = setInterval(() => console.log("Tick"), 1000);clearInterval(interval);

六、字符串操作技巧

27.模板字符串

const msg = `Hello, ${name}`;

28.字符串反轉(zhuǎn)

"hello".split("").reverse().join(""); // "olleh"

29.字符串重復(fù)

"abc".repeat(3); // "abcabcabc"

30.替換所有

"foo foo".replaceAll("foo""bar"); // "bar bar"

31.檢查字符串開頭/結(jié)尾

str.startsWith("Hello");str.endsWith("!");

七、邏輯與運算技巧

32.三元表達(dá)式

const status = isActive ? "active" : "inactive";

33.簡寫 if

isLoggedIn && showDashboard();

34.短路賦值

user.name ||= "Guest";

35.按位取整

~~3.14// 3

36.指數(shù)操作

2 ** 3; // 8

八、工具類技巧

37.深拷貝對象

const deepCopy = JSON.parse(JSON.stringify(obj));

38.獲取對象長度

Object.keys(obj).length;

39.判斷是否為數(shù)組

Array.isArray(arr);

40.隨機字符串

Math.random().toString(36).slice(2);

41.生成唯一 ID

const uuid = () => Date.now().toString(36) + Math.random().toString(36).slice(2);

九、DOM 操作技巧

42.選擇元素

document.querySelector(".btn");

43.添加事件

btn.addEventListener("click"() => alert("Clicked"));

44.創(chuàng)建元素

const el = document.createElement("div");

45.設(shè)置 innerHTML

el.innerHTML = "<p>Hello</p>";

46.設(shè)置樣式

el.style.color = "red";

47.操作類名

el.classList.add("active");el.classList.remove("hidden");

十、實用判斷技巧

48.判斷空對象

Object.keys(obj).length === 0;

49.判斷為空值(null, undefined, "")

if (!value) { /* do something */ }

50.判斷是否為數(shù)字

!isNaN(Number(val));


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