精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

28 個 JavaScript 單行代碼讓你成為 JavaScript 大神

開發 前端
今天這篇文章,我將分享28個強大的 JavaScript 單行代碼,可以節省您的時間并提高您的工作效率。

今天這篇文章,我將分享28個強大的 JavaScript 單行代碼,可以節省您的時間并提高您的工作效率。

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

它使用正則表達式匹配每個單詞的首字母并應用 toUpperCase(),將字符串中每個單詞的首字母轉換為大寫。

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 ]

這使用 Set 從數組中刪除重復值,返回一個唯一值數組。

6. 截斷字符串

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

此函數將字符串縮短到指定的 maxLength,如果字符串長度超過限制,則添加省略號 (…)。

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.

它將對象轉換為 JSON 字符串,然后再轉換為對象,從而創建深度克隆。它不處理循環引用或函數。

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

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

它使用 lastIndexOf() 方法查找數組中指定項最后一次出現的索引。

9. 合并數組

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

它使用 concat() 方法將多個數組合并為一個

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

它使用空格作為分隔符將句子拆分為單詞,然后使用 reduce() 查找并返回句子中最長的單詞。

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

它通過使用 Object.keys() 驗證對象是否沒有鍵來檢查對象是否為空。

13. 計算數字的平均值

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

此單行代碼通過使用 reduce() 將所有值相加并除以數組的長度來計算數字數組的平均值。

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

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

它通過使用 encodeURIComponent() 對鍵和值進行編碼并使用 (&) 連接它們,將對象轉換為查詢字符串格式。

15. 計算數字的階乘

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

此代碼以遞歸方式計算數字的階乘,將其乘以每個小于它的數字,直到達到 1。

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

此示例使用 replace() 方法和與所有空格字符匹配的正則表達式從字符串中刪除所有空格。

19. 檢查閏年

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

通過檢查年份是否能被 4 整除但不能被 100 整除(除非它也能被 400 整除)來確定年份是否為閏年。

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

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

通過反復將隨機數轉換為 36 進制并選擇字符,生成指定長度的隨機字母數字字符串。

21. 將內容復制到剪貼板

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

使用 navigator.clipboard.writeText() 方法將指定內容復制到用戶的剪貼板。

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

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

使用 toLocaleTimeString() 并指定必要的選項,以 HH:MM:SS 格式檢索當前時間。

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

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

使用模數運算符 (%) 檢查數字是否為偶數。如果除以 2 的余數為 0,則該數字為偶數;否則為奇數。

24. 檢測是否為暗色模式

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

使用 window.matchMedia() 檢查用戶的系統或瀏覽器是否設置為暗色模式,以匹配暗色配色方案的媒體查詢。

25. 滾動到頁面頂部

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

通過使用 window.scrollTo() 將 x 和 y 滾動位置都設置為 0,將窗口滾動回頁面頂部。

26. 檢查日期是否有效

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

這將檢查輸入是否為有效的 Date 對象,并確保它不是 NaN(如果日期無效,則會出現 NaN)。

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)]

這將生成從 startDate 到 endDate 的日期數組。它計算兩個日期之間的總天數并將它們映射到日期數組。

28. 檢查數組相等性

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前端開發
相關推薦

2023-10-10 16:20:38

JavaScript代碼技巧

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-10-20 15:16:23

JavaScript數組技能

2023-02-15 16:19:59

JavaScript技巧API

2022-07-08 09:53:51

JavaScript單行代碼

2022-07-12 10:18:05

JavaScript單行代碼

2023-08-01 14:36:00

JavaScript開發

2023-03-13 16:08:00

JavaScript數組函數

2022-09-26 12:53:54

JavaScrip單行代碼

2025-02-18 11:01:49

2022-12-19 15:23:51

JavaScrip開發語言

2023-05-30 15:11:16

JavaScrip開發功能

2023-08-27 16:19:09

JavaScript編程語言

2023-03-27 23:57:25

JavaScrip開發技巧

2023-01-27 15:22:11

JavaScript開發編程語言

2022-09-02 23:08:04

JavaScript技巧開發
點贊
收藏

51CTO技術棧公眾號

成人精品久久一区二区三区| 中文字幕久久精品| 男人日女人下面视频| 九色在线视频| 韩国女主播成人在线| 久久人人爽国产| 特级西西人体高清大胆| 日本一区二区三区视频在线看| 午夜精品久久久久久久99水蜜桃| 日本视频一区在线观看| jlzzjlzzjlzz亚洲人| 久久av一区二区三区| 久久国产精彩视频| 野外性满足hd| 色悠久久久久综合先锋影音下载| 色综合夜色一区| 精品视频在线观看一区二区| 国产乱理伦片a级在线观看| 国产精品系列在线观看| 国产精品成人va在线观看| 久久免费看少妇高潮v片特黄| 网友自拍区视频精品| 欧美一级片免费看| 日韩av片网站| 欧美动物xxx| 夜夜揉揉日日人人青青一国产精品| 日韩福利一区二区三区| 精品人妻少妇嫩草av无码专区| 久热re这里精品视频在线6| 欧美二区在线播放| www.xx日本| 欧美偷拍自拍| 精品亚洲一区二区三区在线播放| 午夜性福利视频| 亚洲伊人精品酒店| 91成人在线免费观看| 成人av一级片| av在线播放资源| 亚洲国产日韩一区二区| 国产在线无码精品| 国产婷婷视频在线 | 我想看黄色大片| 亚洲视频分类| 精品伊人久久97| 色婷婷免费视频| 欧美日韩一区二区三区四区不卡 | 国产精品久久久精品| 欧美在线观看不卡| 亚洲精品婷婷| 性欧美在线看片a免费观看| 久久久久成人精品无码| 欧美激情综合| 色综合久久88色综合天天看泰| 男女性高潮免费网站| 正在播放日韩欧美一页 | 欧美日韩大片一区二区三区| 天堂中文字幕av| 成人福利视频网站| 精品无码久久久久久久动漫| 五月天婷婷社区| 337p粉嫩大胆噜噜噜噜噜91av | 欧美一区在线看| 精品中文字幕在线2019| 久久中文字幕无码| 国产亚洲毛片在线| 青青久久av北条麻妃黑人| 老熟妇一区二区三区| 日韩国产欧美在线视频| 国产原创欧美精品| av免费在线不卡| 成人午夜视频在线观看| 国内成+人亚洲| 国产在线观看免费| 国产精品免费视频观看| 国产精品88久久久久久妇女| 国产丝袜在线播放| 色婷婷国产精品| 中文字幕av专区| 精品亚洲二区| 亚洲精品999| 97在线观看免费视频| 国产精品久久久久久| 欧美国产中文字幕| 欧美一区二区激情视频| 日韩高清电影一区| 91视频网页| 黄色电影免费在线看| 中文字幕在线观看一区二区| www.男人天堂网| 欧美性xxx| 日韩欧美久久久| www.久久国产| 91精品精品| 热草久综合在线| 国产精品九九九九| 99久久久无码国产精品| 亚洲第一导航| 国产不卡123| 欧美日韩高清一区| 亚洲黄色免费在线观看| 日韩精品第一区| 91国产中文字幕| 国产露脸国语对白在线| av毛片久久久久**hd| 伊人色综合影院| 亚洲插插视频| 日韩欧美精品三级| 亚洲毛片亚洲毛片亚洲毛片| 亚洲国产高清一区二区三区| 国产女精品视频网站免费| 人人妻人人澡人人爽人人欧美一区 | 国产精品免费福利| 欧洲成人一区二区三区| 国产精品精品国产色婷婷| 男人添女人下面高潮视频| 在线欧美激情| 中文亚洲视频在线| 91美女免费看| 福利视频网站一区二区三区| 午夜啪啪免费视频| 精品欧美一区二区三区在线观看 | 亚洲黄色三级| 99国产视频| 免费黄色网址在线观看| 91黄色小视频| 国产麻豆天美果冻无码视频| 欧美午夜不卡| 91精品天堂| 成人ww免费完整版在线观看| 欧美唯美清纯偷拍| 精品无人区无码乱码毛片国产| 今天的高清视频免费播放成人| 成人xxxx视频| 免费大片在线观看www| 欧美午夜精品免费| 成都免费高清电影| 久久久久综合| 欧美日韩一区二区三| 日本不卡1234视频| 亚洲精品电影网站| 日本学生初尝黑人巨免费视频| 成人午夜激情视频| 欧美亚洲色图视频| av日韩精品| 午夜免费在线观看精品视频| 日日躁夜夜躁白天躁晚上躁91| 亚洲一级二级三级| 精品少妇人妻av一区二区三区| 欧美激情aⅴ一区二区三区| 亚洲综合社区网| 调教一区二区| 精品国产百合女同互慰| 国产成人啪精品午夜在线观看| 成人动漫精品一区二区| 欧美成人三级在线视频| 欧美sss在线视频| 欧美一区二区.| 成人午夜影视| 欧美精品黑人性xxxx| 亚洲国产123| 国产精品一二三四| 国精产品一区一区三区视频| 日韩欧美黄色| 国产精品1区2区在线观看| av在线天堂| 91精品国产91热久久久做人人| 欧美三级在线免费观看| 波多野结衣中文一区| 国产精品欧美激情在线观看| 精品国产乱码久久久久久1区2匹| 国产精品尤物福利片在线观看| 日韩精品毛片| 精品久久久久一区| 国产一级片毛片| 国产精品萝li| 一二三区视频在线观看| 美女黄色成人网| www.午夜色| 国产丝袜一区| 欧美一级视频在线观看| 免费av在线播放| 精品欧美乱码久久久久久| 日日骚av一区二区| 亚洲欧美国产三级| 亚洲精品在线视频免费观看| 免费观看日韩av| 国产乱子伦精品无码专区| 欧美极品在线观看| 91手机视频在线观看| 咪咪网在线视频| 日韩中文字在线| 日本一卡二卡四卡精品| 欧美日韩精品免费| 免费日韩一级片| 中文字幕中文字幕在线一区 | 久久久男人的天堂| 日韩精品每日更新| 日本手机在线视频| 婷婷综合视频| 日本一区高清在线视频| 亚洲一区二区三区四区电影| 国产精品白嫩美女在线观看| 欧美日韩色网| 日韩在线中文字| 日本中文字幕一区二区有码在线| 91精品国产免费| 免费av中文字幕| 亚洲国产精品一区二区www| 亚洲一级理论片| 97精品久久久午夜一区二区三区| 在线播放免费视频| 日韩av在线发布| 国产午夜福利100集发布| 欧美激情国产在线| 日产精品高清视频免费| 欧美大胆视频| 99国内精品久久久久久久软件| 久久免费资源| 日本韩国在线不卡| 国产美女高潮在线| 欧美日韩高清区| 伊人春色在线观看| 日韩专区在线观看| 粉嫩av在线播放| 一个色综合导航| 欧洲天堂在线观看| 日韩av中文字幕在线| 刘亦菲久久免费一区二区| 日韩手机在线导航| 国产麻豆免费视频| 91麻豆精品国产自产在线 | 激情图片小说一区| 国产又大又黄又粗又爽| 日韩高清一区二区| 无码日韩人妻精品久久蜜桃| 欧美亚洲一区| 亚洲精品无码久久久久久| 一区二区激情| 日韩av一二三四区| 亚洲一区二区网站| aa在线免费观看| 老鸭窝毛片一区二区三区| 人妻av中文系列| 国产欧美一级| 国产免费一区二区三区视频| 亚洲欧美久久久| 男人天堂网视频| 日韩中文字幕91| 中文字幕第17页| 国内精品伊人久久久久av一坑| 日韩欧美理论片| 国产精品一区二区在线播放| 最新国产精品自拍| 北条麻妃一区二区三区| 51调教丨国产调教视频| 国产午夜精品一区二区三区嫩草 | 91精品久久久久久蜜桃| youjizz亚洲| 久久久com| 国产亚洲一区| 亚洲自拍的二区三区| 中文字幕一区二区三区久久网站| 2021国产视频| 亚洲免费高清| 亚洲色精品三区二区一区| 麻豆视频一区二区| 先锋资源在线视频| 99久久国产综合精品女不卡| 欧美做受xxxxxⅹ性视频| 欧美韩国日本一区| 中文字幕另类日韩欧美亚洲嫩草| 亚洲午夜久久久久久久久久久| 亚洲日本韩国在线| 欧美性极品少妇| www.av日韩| 亚洲新中文字幕| 超碰caoporn久久| 欧美亚洲日本黄色| 欧美特黄色片| 国产九色精品| 久久人人99| 精品视频在线观看一区| 蜜桃91丨九色丨蝌蚪91桃色| xxxxwww一片| 国产欧美视频一区二区三区| 欧美一区二区三区爽爽爽| 欧美日韩一区二区免费在线观看| a片在线免费观看| 日韩欧美一级二级三级久久久| 午夜福利理论片在线观看| 在线观看精品国产视频| 欧美wwww| 国产主播喷水一区二区| 看全色黄大色大片免费久久久| 亚洲成人自拍| 一区二区三区福利| 国产又粗又猛大又黄又爽| 久久亚洲免费视频| 久草视频在线资源| 欧美日韩亚洲综合在线 | 香蕉视频网站入口| 成人禁用看黄a在线| 特级西西人体高清大胆| 欧美性videos高清精品| 国产成人精品一区二三区四区五区| 亚洲美女在线看| 高清电影在线观看免费| 国产日韩在线精品av| 亚洲精品aaaaa| 欧美日韩激情四射| 另类人妖一区二区av| 西西444www无码大胆| 亚洲国产精品久久久男人的天堂 | 看全色黄大色大片| 丝瓜av网站精品一区二区| japanese在线观看| 亚洲精品菠萝久久久久久久| 在线观看免费视频a| 亚洲日本aⅴ片在线观看香蕉| 24小时免费看片在线观看| 亚洲tv在线观看| 97在线精品| 天天色综合天天色| 久久精品日产第一区二区三区高清版 | 国产精品久久久久久av福利软件| 日韩精品亚洲aⅴ在线影院| 人妻互换免费中文字幕| 国产成人av自拍| 欧美极品aaaaabbbbb| 欧美一区二区三区人| 欧美a在线看| 国产欧美久久久久久| 日韩黄色大片网站| 69久久久久久| 中文一区在线播放| 五月激情丁香网| 在线性视频日韩欧美| 欧美黑人疯狂性受xxxxx野外| 久久草.com| 国产精品亚洲综合色区韩国| 91精品小视频| 天天操天天综合网| 手机av在线免费观看| 97香蕉久久超级碰碰高清版| 欧美美女黄色| 六月丁香婷婷激情| 国产日韩欧美不卡在线| 久久精品视频2| 日韩中文在线中文网三级| 青娱乐极品盛宴一区二区| 在线观看国产一区| 国产精品综合一区二区| 青娱乐av在线| 亚洲国产精品电影在线观看| 松下纱荣子在线观看| 久久久久久久久久久久久久一区| 午夜亚洲一区| 国产18无套直看片| 91精品国产综合久久蜜臀| 亚洲国产精品精华素| 国产精品毛片va一区二区三区| 99国产精品久久久久久久| 人妻少妇一区二区| 欧美视频一区二区三区在线观看| 91在线直播| 高清视频一区| 香蕉成人久久| 国产精品18在线| 欧美成人r级一区二区三区| 热色播在线视频| 一级做a爰片久久| 成人一区二区三区在线观看| 亚洲免费在线观看av| 综合av色偷偷网| 试看120秒一区二区三区| 久久久一本二本三本| 中文字幕免费一区| 国产刺激高潮av| 国产精品海角社区在线观看| 婷婷丁香综合| 国产精品久久久免费观看| 欧美日韩dvd在线观看| 久操av在线| 婷婷久久伊人| 岛国av在线一区| 成人黄色免费网| 欧美激情视频网站| 成人影院天天5g天天爽无毒影院| 日韩av自拍偷拍| 一本一道波多野结衣一区二区| 麻豆传媒免费在线观看| 精品国产一区二区三区麻豆小说 | 日本一区二区久久精品| 国产麻豆精品视频| 日韩免费av网站| 欧美情侣性视频| 菠萝蜜一区二区| 亚洲一区二区乱码| 日韩亚洲欧美在线观看| 性高爱久久久久久久久|