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

30 個 JavaScript 單行代碼,讓你成為 JavaScript 奇才

開發 前端
今天這篇文章,我想跟大家分享一些強大的 JavaScript 單行代碼,因為使用這些單行代碼可以幫助你提升工作效率,在這篇文章中,我總結了30個實用的代碼技巧,希望這些代碼技巧對你有用。

今天這篇文章,我想跟大家分享一些強大的 JavaScript 單行代碼,因為使用這些單行代碼可以幫助你提升工作效率,在這篇文章中,我總結了30個實用的代碼技巧,希望這些代碼技巧對你有用。

那么,我們現在就開始吧。

1. 反轉字符串

const reversedString = str => str.split('').reverse().join('');
reversedString("Hello World"); // dlroW olleH

2.標題大小寫為字符串

const titleCase = sentence => sentence.replace(/\b\w/g, char => char.toUpperCase());
titleCase("hello world"); // Hello World

3. 在變量之間交換值

[a, b] = [b, a];

4. 將數字轉換為布爾值

const isTruthy = num => !!num;
isTruthy(0) // False

5. 從數組中獲取唯一值

const uniqueArray = arr => [...new Set(arr)];
uniqueArray([5,5,2,2,2,4,2]) // [ 5, 2, 4 ]

6. 截斷字符串

const truncateString = (str, maxLength) => (str.length > maxLength) ? `${str.slice(0, maxLength)}...` : str;
truncateString("Hello World", 8); // Hello Wo...

7. 深度克隆對象

const deepClone = obj => JSON.parse(JSON.stringify(obj));


const obj1 = { name: "John", age: 40};
const obj2 = deepClone(obj1);
obj2.age = 20;
console.log(obj1.age); // 40


//This method works for most objects, but it has some limitations. Objects with circular references or functions cannot be converted to JSON, so this method will not work for those types of objects.

8. 查找數組中最后一次出現的位置

const lastIndexOf = (arr, item) => arr.lastIndexOf(item);
lastIndexOf([5, 5, 4 , 2 , 3 , 4], 5) // 1

9. 合并數組

const mergeArrays = (...arrays) => [].concat(...arrays);
mergeArrays([5, 5, 4], [2 , 3 , 4]) // [5, 5, 4, 2, 3, 4]

10.找到句子中最長的單詞

const longestWord = sentence => sentence.split(' ').reduce((longest, word) => word.length > longest.length ? word : longest, '');
longestWord("The quick brown fox jumped over the lazy dog") // jumped

11. 生成一個數字范圍

const range = (start, end) => [...Array(end - start + 1)].map((_, i) => i + start);
range(5, 15); // [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]

12. 檢查對象是否為空

const isEmptyObject = obj => Object.keys(obj).length === 0;
isEmptyObject({}) // true
isEmptyObject({ name: 'John' }) // false

13. 計算數字的平均值

const average = arr => arr.reduce((acc, num) => acc + num, 0) / arr.length;
average([1, 2, 3, 4, 5, 6, 7, 8, 9]) // 5

14. 將對象轉換為查詢參數

const objectToQueryParams = obj => Object.entries(obj).map(([key, val]) => `${encodeURIComponent(key)}=${encodeURIComponent(val)}`).join('&');
objectToQueryParams({ page: 2, limit: 10 }) // page=2&limit=10

15. 計算數字的階乘

const factorial = num => num <= 1 ? 1 : num * factorial(num - 1);
factorial(4) // 24

16. 計算字符串中的元音數

const countVowels = str => (str.match(/[aeiou]/gi) || []).length;
countVowels('The quick brown fox jumps over the lazy dog') // 11

17. 檢查有效的電子郵件

const isValidEmail = email => /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/.test(email);
isValidEmail("example@email.com") // true
isValidEmail("example") // false

18. 刪除字符串中的空格

const removeWhitespace = str => str.replace(/\s/g, '');
removeWhitespace("H el l o") // Hello

19. 檢查閏年

const isLeapYear = year => (year % 4 === 0 && year % 100 !== 0) || (year % 400 === 0);
isLeapYear(2023) // false
isLeapYear(2004) // true

20.生成指定長度的隨機字符串

const generateRandomString = length => [...Array(length)].map(() => Math.random().toString(36)[2]).join('')
generateRandomString(8) // 4hq4zm7y

21.復制內容到剪貼板

const copyToClipboard = (content) => navigator.clipboard.writeText(content)
copyToClipboard("Hello World")

22. 獲取 HH:MM:SS 格式的當前時間

const currentTime = () => new Date().toLocaleTimeString([], { hour: '2-digit', minute: '2-digit', second: '2-digit', hour12: false })
currentTime() // 19:52:21

23. 檢查數字是偶數還是奇數

const isEven = num => num % 2 === 0
isEven(1) // false
isEven(2) // true

24.檢測是否為深色模式

const isDarkMode = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
console.log(isDarkMode) // false

25. 滾動到頁面頂部

const goToTop = () => window.scrollTo(0, 0)
goToTop()

26. 檢查有效日期

const isValidDate = date => date instanceof Date && !isNaN(date);
isValidDate(new Date("This is not date.")) // false
isValidDate(new Date("08-10-2023")) // true

27. 生成日期范圍

const generateDateRange = (startDate, endDate) => Array.from({ length: (endDate - startDate) / (24 * 60 * 60 * 1000) + 1 }, (_, index) => new Date(startDate.getTime() + index * 24 * 60 * 60 * 1000));
generateDateRange(new Date("2023-09-31"), new Date("2023-10-08")) // [Sun Oct 01 2023 05:30:00 GMT+0530 (India Standard Time), Mon Oct 02 2023 05:30:00 GMT+0530 (India Standard Time), Tue Oct 03 2023 05:30:00 GMT+0530 (India Standard Time), Wed Oct 04 2023 05:30:00 GMT+0530 (India Standard Time), Thu Oct 05 2023 05:30:00 GMT+0530 (India Standard Time), Fri Oct 06 2023 05:30:00 GMT+0530 (India Standard Time), Sat Oct 07 2023 05:30:00 GMT+0530 (India Standard Time), Sun Oct 08 2023 05:30:00 GMT+0530 (India Standard Time)]

28.計算兩個日期之間的間隔

const dayDiff = (d1, d2) => Math.ceil(Math.abs(d1.getTime() - d2.getTime()) / 86400000)
dayDiff(new Date("2023-10-08"), new Date("1999-04-31")) // 8926

29. 找出該日期是一年中的第幾天

const dayInYear = (d) => Math.floor((d - new Date(d.getFullYear(), 0, 0)) / 1000 / 60 / 60 / 24)
dayInYear(new Date('2023/10/08'))// 281

30.檢查數組是否相等

const areArraysEqual = (arr1, arr2) => JSON.stringify(arr1) === JSON.stringify(arr2);
areArraysEqual([1, 2, 3], [4, 5, 6]) // false
areArraysEqual([1, 2, 3], [1, 2, 3]) // false

結論

JavaScript 行話是很有價值的工具,可以簡化復雜的任務并提高代碼的可讀性。通過理解和利用這些技術,不僅展示了自己的熟練程度,還展示了編寫高效、清晰和可維護代碼的能力。

我希望你能發現它們有用之處,讓它們適應你的項目,幫助你提升開發效率,不斷優化你的解決方案。

責任編輯:華軒 來源: web前端開發
相關推薦

2024-10-09 14:45:41

2023-05-30 15:11:16

JavaScrip開發功能

2022-12-19 15:23:51

JavaScrip開發語言

2022-10-08 07:54:24

JavaScriptAPI代碼

2025-04-07 07:30:00

JavaScript前端

2022-11-28 23:44:26

JavaScript技巧程序員

2024-08-27 15:25:33

2025-02-25 11:12:53

2022-07-08 09:53:51

JavaScript單行代碼

2023-02-15 16:19:59

JavaScript技巧API

2022-10-20 15:16:23

JavaScript數組技能

2022-07-12 10:18:05

JavaScript單行代碼

2023-08-01 14:36:00

JavaScript開發

2022-09-26 12:53:54

JavaScrip單行代碼

2025-02-18 11:01:49

2023-03-13 16:08:00

JavaScript數組函數

2023-08-27 16:19:09

JavaScript編程語言

2024-08-02 16:20:06

2023-03-27 23:57:25

JavaScrip開發技巧

2023-01-27 15:22:11

JavaScript開發編程語言
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品一级在线观看 | 国产精品亚洲一区二区三区在线 | 欧美日韩国产高清 | 91午夜在线 | 91精品久久久久久久久久 | 一级在线| 免费一级做a爰片久久毛片潮喷 | 欧州一区二区三区 | 能看的av网站 | 天天做日日做 | 91正在播放 | 99在线免费观看视频 | 嫩草一区二区三区 | 不卡的av电影 | 国产三区在线观看视频 | 91中文视频| 久久综合爱 | 亚洲日本中文 | 欧美在线观看免费观看视频 | 国产乱精品一区二区三区 | 精品国产一区一区二区三亚瑟 | 日韩精品人成在线播放 | 日本一卡精品视频免费 | a毛片| 国产伦精品一区二区三区精品视频 | 全免费a级毛片免费看视频免 | 成人在线免费视频 | 一区二区三区不卡视频 | 91视频国产精品 | 国产精品欧美一区二区三区 | 色呦呦网站 | 在线视频h | 午夜精品 | 国产成人免费在线 | 欧美精品久久久 | 欧美精品在欧美一区二区少妇 | 国产精品成人一区二区三区 | 国产一区二区三区在线观看免费 | 殴美一级片 | 欧美成人在线影院 | 三级av在线|