首頁  >  文章  >  web前端  >  最有用的 JavaScript 片段

最有用的 JavaScript 片段

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-31 21:37:29811瀏覽

Most Useful JavaScript Snippets

20 個最有用的 JavaScript 片段

使用這些基本片段來提高您的編碼效率。

1. 產生隨機數

let randomNum = Math.floor(Math.random() * maxNum);

2. 檢查物件是否為空

function isEmptyObject(obj) { return Object.keys(obj).length === 0; }

3. 建立倒數計時器

function countdownTimer(minutes) { /* countdown logic */ }

4. 對物件數組進行排序

function sortByProperty(arr, property) { return arr.sort((a, b) => (a[property] > b[property]) ? 1 : -1); }

5. 從陣列中刪除重複項

let uniqueArr = [...new Set(arr)];

6. 截斷字串

function truncateString(str, num) { return str.length > num ? str.slice(0, num) + "..." : str; }

7. 將字串轉換為標題大小寫

function toTitleCase(str) { return str.replace(/\b\w/g, function(txt) { return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); }); }

8. 檢查數組中是否存在某個值

let isValueInArray = arr.includes(value);

9. 反轉字串

let reversedStr = str.split("").reverse().join("");

10. 從現有數組建立新數組

let newArr = oldArr.map(function(item) { return item + 1; });

11. 函數呼叫去抖動

function debounce(func, delay) { let timeout; return function(...args) { clearTimeout(timeout); timeout = setTimeout(() => func.apply(this, args), delay); }; }

12. 限制函數調用

function throttle(func, limit) { let lastFunc; let lastRan; return function(...args) { if (!lastRan) { func.apply(this, args); lastRan = Date.now(); } else { clearTimeout(lastFunc); lastFunc = setTimeout(function() { if ((Date.now() - lastRan) >= limit) { func.apply(this, args); lastRan = Date.now(); } }, limit - (Date.now() - lastRan)); } }; }

13. 克隆對象

const cloneObject = (obj) => ({ ...obj });

14. 合併兩個對象

const mergeObjects = (obj1, obj2) => ({ ...obj1, ...obj2 });

15. 檢查回文字串

function isPalindrome(str) { const cleanedStr = str.replace(/[^A-Za-z0-9]/g, '').toLowerCase(); return cleanedStr === cleanedStr.split('').reverse().join(''); }

16. 計算數組中出現的次數

const countOccurrences = (arr) => arr.reduce((acc, val) => (acc[val] ? acc[val]++ : acc[val] = 1, acc), {});

17. 從日期物件取得一年中的某一天

const dayOfYear = date => Math.floor((date - new Date(date.getFullYear(), 0, 0)) / 1000 / 60 / 60 / 24);

18. 從陣列中過濾唯一值

const uniqueValues = arr => [...new Set(arr)];

19. 將度數轉換為弧度

const degreesToRads = deg => (deg * Math.PI) / 180;

20. 延遲函數執行

const defer = (fn, ...args) => setTimeout(fn, 1, ...args);

以上是最有用的 JavaScript 片段的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn