亚洲精品美女91_噜噜噜躁狠狠躁狠狠精品视频_欧美性理论片在线观看片免费_99国产精品国产精品毛片_国产亚洲午夜高清国产拍精品_香蕉久久一区二区不卡无毒影院_中文日韩电影网站_亚洲高清免费_伊人久久噜噜噜躁狠狠躁_麻豆国产精品一区二区三区_国产亚洲一二三区_免费视频一区_国产欧美日韩综合一区在线播放_国产精品亚洲第一区在线暖暖韩国_久热国产精品视频_午夜亚洲福利

云部落資源網
  • 網站首頁
  • PBOOTCMS模板
  • EYOUCMS模板
  • DEDECMS模板
  • HTML模板
  • 模板周邊
    • 代碼素材
    • 后臺管理
    • 數據框架
    • 游戲源碼
    • 程序源碼
    • 微信小程序
    • 人人站CMS
    • WordPress主題
  • 404模板
  • 問答交流
  • 知識學院
登錄

50個超級有用的JavaScript單行代碼

知識學院 0 48
    當前位置:
  1. 首頁
  2. 知識學院
  3. 正文

在這篇文章中,我列出了一個系列的50個 JavaScript 單行代碼,它們在使用 vanilla js(≥ ES6)進行開發時非常有用。它們也是使用該語言在最新版本中為我們提供的所有功能來解決問題的優雅方式。

我將它們分為以下5大類:

  • 日期
  • 字符串
  • 數字
  • 數組
  • 工具

事不宜遲,我馬上開始的,我希望你發現他們對你有幫助!

日期

1. 日期是否正確(有效)

此方法用于檢查給定日期是否有效

1
2
const isDateValid = (...val) => !Number.isNaN(new Date(...val).valueOf());
isDateValid("December 27, 2022 13:14:00");? // true

2. 知道一個日期是否對應于當前日期

就像將兩個日期轉換為相同格式并進行比較一樣簡單。

是一個 Date 實例。

1
const isCurrentDay = (date) =>? new Date().toISOString().slice(0, 10) === date.toISOString().slice(0, 10);

3. 如何知道一個日期是否在兩個日期之間

我們檢查過去的日期是否在最小-最大范圍內。

<min>、<max> 和 <date> 是 Date 實例。

1
const isBetweenTwoDates = ( min, max, date) => date.getTime() >= min.getTime() && date.getTime() <= max.getTime();

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

此方法用于計算兩個日期之間的間隔。

1
2
3
4
const dayDif = (date1, date2) => Math.ceil(Math.abs(date1.getTime() - date2.getTime()) / 86400000)
?
?
dayDif(new Date("2022-08-27"), new Date("2022-12-25"))? // 120

5. 如何知道約會是否在周末

getDay 方法返回一個介于 0 和 6 之間的數字,表示給定日期是星期幾。

是一個 Date 實例。

1
const isWeekend = ( date ) => date.getDay() === 6 || date.getDay() === 0;

6. 檢查日期是否在一年內

類似于我們過去檢查日期是否與當前日期相對應的情況。在這種情況下,我們獲取年份并進行比較。

和是兩個 Date 實例。

1
const isInAYear = (date, year) => date.getUTCFullYear() === new Date(`${year}`).getUTCFullYear();

7. 確定日期所在的一年中的哪一天

此方法用于檢測給定日期所在的一年中的哪一天。

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

8. 將小時轉換為 AM-PM 格式

我們可以用數學表達式來判斷經過的時間是否小于或等于13小時,從而判斷是“上午”還是“下午”。

1
const toAMPMFormat= (h) => `${h % 12 === 0 ? 12 : h % 12}${h < 12 ? ' am.' : ' pm.'}`;

9. 格式化時間

此方法可用于將時間轉換為 hh:mm:ss 格式。

1
2
3
4
const timeFromDate = date => date.toTimeString().slice(0, 8);
?
timeFromDate(new Date(2021, 11, 2, 12, 30, 0));? // 12:30:00
timeFromDate(new Date());? // now time 09:00:00

?10.將小時轉換為 AM-PM 格式

我們可以用數學表達式來判斷經過的時間是否小于或等于13小時,從而判斷是“上午”還是“下午”。

1
const toAMPMFormat= (h) => `${h % 12 === 0 ? 12 : h % 12}${h < 12 ? ' am.' : ' pm.'}`;

字符串

10.1 字符串的初始大寫

此方法用于將字符串的第一個字母大寫。

1
2
const capitalize = str => str.charAt(0).toUpperCase() + str.slice(1)
capitalize("hello world")? // Hello world

10.2 句子首字母大寫

我們將第一個字母轉換為大寫字母,然后使用 <join.> 附加句子的其余字母

1
const capitalize = ([first, ...rest]) => `${first.toUpperCase()}${rest.join('')}`;

11. 將一封信轉換成他的同事表情符號

1
const letterToEmoji = c => String.fromCodePoint(c.toLowerCase().charCodeAt() + 127365);

12.如何判斷一個字符串是不是回文

1
const isPalindrome = (str) => str.toLowerCase() === str.toLowerCase().split('').reverse().join('');

13. 翻轉字符串

該方法用于翻轉字符串并返回翻轉后的字符串。

1
2
3
const reverse = str => str.split('').reverse().join('');
?
reverse('hello world');?? // 'dlrow olleh'

14. 隨機字符串

此方法用于生成隨機字符串。

1
2
3
4
5
6
//方式一
const randomString = () => Math.random().toString(36).slice(2);
randomString();
?
//方式二
const randomstr = Math.random().toString(36).substring(7)

15. 字符串截斷

此方法將字符串截斷為指定長度。

1
2
3
const truncateString = (string, length) => string.length < length ? string : `${string.slice(0, length - 3)}...`;
?
truncateString('Hi, I should be truncated because I am too loooong!', 36)?? // 'Hi, I should be truncated because...'

16. 從字符串中刪除 HTML

此方法用于從字符串中刪除 HTML 元素。

1
const stripHtml = html => (new DOMParser().parseFromString(html,'text/html')).body.textContent || '';

數字

17.如何計算一個數的階乘

1
const getFactorial = (n) => (n <= 1 ? 1 : n * getFactorial(n - 1));

18. 如何獲得一個數的斐波那契數列

1
const getFibonacci = (n, memo = {}) => memo[n] || (n <= 2 ? 1 : (memo[n] = getFibonacci(n - 1, memo) + getFibonacci(n - 2, memo)));

19. 如何求一個數的階乘

1
const getFactorial = (n) => (n <= 1 ? 1 : n * getFactorial(n - 1));

20. 判斷一個數是奇數還是偶數

此方法用于確定數字是奇數還是偶數。

1
2
3
const isEven = num => num % 2 === 0;
?
isEven(996);

21. 得到一組數字的平均值

1
2
3
const average = (.. .args) => args.reduce((a, b) => a + b) / args.length;
?
average(1, 2, 3, 4, 5); // 3

22. 從兩個整數中確定隨機整數

此方法用于獲取兩個整數之間的隨機整數。

1
2
3
const random = (min, max) => Math.floor(Math.random() * (max — min + 1) + min);
?
random(1, 50);

23. 四舍五入到指定位數

此方法可用于將數字四舍五入到指定的數字。

1
2
3
const random = (min, max) => Math.floor(Math.random() * (max — min + 1) + min);
?
random(1, 50);

數組

24. 將一個數組復制到另一個數組

1
const copyToArray = (arr) => [...arr];

25. 從數組中獲取唯一元素

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

26. 隨機排列

以下代碼段以非常有效的方式打亂數組。

1
const shuffle = (arr) => arr.sort(() => Math.random() - 0.5);

27. 按屬性對數組進行分組

1
const groupBy = (arr, groupFn) =>?? arr.reduce( (grouped, obj) => ({...grouped, [groupFn(obj)]: [...(grouped[groupFn(obj)] || []), obj], }),{});

28. 檢查兩個數組是否包含相同的值

我們可以使用 Array.sort() 和 Array.join() 方法來檢查兩個數組是否包含相同的值。

1
const containSameValues= (arr1, arr2) =>?? arr1.sort().join(',') === arr2.sort().join(',');

工具

29. 檢測對象是否為空

該方法用于檢測 JavaScript 對象是否為空。

1
const isEmpty = obj => Reflect.ownKeys(obj).length === 0 && obj.constructor === Object;

30. 切換變量

可以使用以下形式交換兩個變量的值,而無需應用第三個變量。

1
[foo, bar] = [bar, foo];

31. 隨機布爾值

此方法返回一個隨機布爾值。使用 Math.random(),你可以得到一個 0-1 的隨機數,并將它與 0.5 進行比較,有一半的概率得到一個真值或假值。

1
2
const randomBoolean = () => Math.random() >= 0.5;
randomBoolean();

32. 獲取變量的類型

該方法用于獲取變量的類型。

1
2
3
4
5
6
7
8
9
const trueTypeOf = (obj) => Object.prototype.toString.call(obj).slice(8, -1).toLowerCase();
trueTypeOf(‘'); // string
trueTypeOf(0); // number
trueTypeOf(); // undefined
trueTypeOf(null); // null
trueTypeOf({}); // object
trueTypeOf([]); // array
trueTypeOf(0); // number
trueTypeOf(() => {}); // function

33. 顏色轉換

33.1將 HEX “#00000” 轉換為 RGB(0,0,0)

1
2
3
4
5
6
const toRGB= (hex) =>
????hex.
????????replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, (_, r, g, b) => `#${r}${r}${g}${g}$$`)
????????.substring(1)
????????.match(/.{2}/g)
????????.map((x) => parseInt(x, 16));

33.2將 RGB(0,0,0)轉換為 HEX”#00000″

1
2
const rgbToHex= (r,g,b) => "#" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1);
rgbToHex(255, 255, 255);? // '#ffffff'

33.3?隨機生成一種十六進制顏色

此方法用于獲取隨機的十六進制(HEX)顏色值。

1
2
const randomHex = () => `#${Math.floor(Math.random() * 0xffffff).toString(16).padEnd(6, "0")}`;
randomHex();

34. 溫度與華氏度轉換

34.1 轉換為華氏溫度

1
const toFahrenheit= (celsius) => (celsius * 9) / 5 + 32;

34.2 轉換為攝氏度

1
const toCelsius=? (fahrenheit) => (fahrenheit- 32) * 5 / 9;

35. 確定當前選項卡是否處于活動狀態

此方法用于檢查當前選項卡是否處于活動狀態。

1
const isTabInView = () => !document.hidden;

36. 判斷當前設備是否為蘋果設備

此方法用于檢查當前設備是否為 Apple 設備。

1
2
const isAppleDevice = () => /Mac|iPod|iPhone|iPad/.test(navigator.platform);
isAppleDevice();

37. 如何清除瀏覽器的所有cookies

1
const clearAllCookies = () => document.cookie.split(';').forEach((c) => (document.cookie = c.replace(/^ +/, '').replace(/=.*/, `=;expires=${new Date().toUTCString()};path=/`)));

38. 檢查函數是否為異步函數

1
const isAsyncFunction = (f) => Object.prototype.toString.call(f) === '[object AsyncFunction]';

39. 如何知道一段代碼是否在瀏覽器中運行

1
const runningInBrowser = typeof window === 'object' && typeof document === 'object';

40. 如何知道一段代碼是否在node中運行

1
const runningInNode= typeof process !== 'undefined' && process.versions != null && process.versions.node != null;

41. 檢測暗模式

這是一種非常方便的方法來檢查用戶是否在其瀏覽器上啟用了黑暗模式。

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

42. 滾動的元素滾動到頂部

滾動元素的一種單行方法是使用方法。

1
2
3
//方式一
const toTop = (element) =>
??element.scrollIntoView({ behavior: "smooth", block: "start" });

43. 滾動的元素滾動到底部

1
2
const toBottom = (element) =>
??element.scrollIntoView({ behavior: "smooth", block: "end" });

44.?導航到頁面頂部

此方法用于返回頁面頂部。

1
2
const goToTop = () => window.scrollTo(0, 0);
goToTop();

45. 是否滾動到頁面底部

該方法用于判斷頁面是否在底部。

1
const scrolledToBottom = () => document.documentElement.clientHeight + window.scrollY >= document.documentElement.scrollHeight;

46.將 JSON 轉換為map

這個函數可以讓我們以簡單的方式將 Map 對象轉換為 JSON 字符串。

1
const jsonToMap = (json) => new Map(Object.entries(JSON.parse(json)));

47.生成一個128位的UUID

此函數允許我們生成具有 128 位值的 UUID,用于唯一標識對象或實體。

1
const generateUUID = (a) =>?? a???? ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)???? : ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(???????? /[018]/g,???????? generateUUID);
登錄后復制免費講解

48. 重定向到一個 URL

此方法用于重定向到新 URL。

1
2
const redirect = url => location.href = url
redirect("https://www.google.com/")

49. 打開瀏覽器打印框

該方法用于打開瀏覽器的打印框。

1
const showPrintDialog = () => window.print()

50.刪除所有cookies

該方法使用 document.cookie 訪問 cookie 并清除網頁上存儲的所有 cookie。

1
const clearCookies = document.cookie.split(';').forEach(cookie => document.cookie = cookie.replace(/^ +/, '').replace(/=.*/, `=;expires=${new Date(0).toUTCString()};path=/`));

總結

到此這篇關于50個超級有用的JavaScript單行代碼的文章就介紹到這了,更多相關JS單行代碼內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

聲明:本站所有文章,如無特殊說明或標注,均為本站原創發布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發布本站內容到任何網站、書籍等各類媒體平臺。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
云部落資源網普通
上一篇 響應式html網頁設計模板
下一篇 專業商業代理服務公司宣傳網站網頁HTML元碼模板

相關文章

響應式網站模板源碼及CMS網站模板下載指南

響應式網站模板源碼及CMS網站模板下載指南

知識學院 4 天前 8
企業網站模板構建在線業務門戶的基石

企業網站模板構建在線業務門戶的基石

知識學院 1 月前 11
免費企業網站源碼模板開啟企業數字化之旅的經濟之選

免費企業網站源碼模板開啟企業數字化之旅的經濟之選

知識學院 2 月前 24
Pbootcms模板網 企業網站模板庫 網站模板

Pbootcms模板網 企業網站模板庫 網站模板

知識學院 2 月前 24
  • PBOOTCMS模板
    PBOOTCMS模板
  • DEDECMS模板
    DEDECMS模板
  • EYOUCMS模板
    EYOUCMS模板
  • HTML模板
    HTML模板
響應式多用途建筑工程集團企業PbootCMS模板自適應手機端

響應式多用途建筑工程集團企業PbootCMS模板自適應手機端

5 天前 260
響應式多用途外貿企業官網PbootCMS模板自適應手機端

響應式多用途外貿企業官網PbootCMS模板自適應手機端

3 周前 300
響應式技術分享資訊文章博客網站Pbootcms模板自適應手機端

響應式技術分享資訊文章博客網站Pbootcms模板自適應手機端

1 月前 150
響應式智能科技集裝箱企業網站模板自適應手機端

響應式智能科技集裝箱企業網站模板自適應手機端

2 月前 260
大氣門窗制造產品展示企業網站PbootCMS模板帶手機端

大氣門窗制造產品展示企業網站PbootCMS模板帶手機端

2 月前 320
云部落資源網

云部落資源網(Yunbuluo.net)部分資源來自互聯網收集、整理及開發制作而成,部分文字/圖片/素材等如有侵犯到您的權益,請與本站聯系。

個人中心尊享會員隱私政策
關于本站新手指南注冊協議
在線投稿標簽導航聯系我們
常見問題售后服務

Copyright ? 2021 云部落資源網 - All rights reserved豫ICP備2020028951號免責聲明:本站所有模板/文章除標明原創外,均來自互聯網,不對任何資源負法律責任,如有侵犯您的版權,請及時聯系我們刪除! 網站地圖

  • 首頁
  • 分類
  • 問答
  • 我的
  • 頂部
CMS教程 DEDECMS模板 EYOUCMS模板 HTML模板 PBOOTCMS模板 中文/手機/單頁 代碼素材 商務/辦公/金融 商城/素材/下載 建站指南 機械/設備/五金 模板周邊 知識學院 軟件/營銷/網絡 運維安全 運營推廣 酷站分享 集團/通用/產品
亚洲精品美女91_噜噜噜躁狠狠躁狠狠精品视频_欧美性理论片在线观看片免费_99国产精品国产精品毛片_国产亚洲午夜高清国产拍精品_香蕉久久一区二区不卡无毒影院_中文日韩电影网站_亚洲高清免费_伊人久久噜噜噜躁狠狠躁_麻豆国产精品一区二区三区_国产亚洲一二三区_免费视频一区_国产欧美日韩综合一区在线播放_国产精品亚洲第一区在线暖暖韩国_久热国产精品视频_午夜亚洲福利
亚洲视频第一页| 国产精品白丝黑袜喷水久久久| 欧美日韩国内| 国内偷自视频区视频综合| 国产精品久久久久7777婷婷| 欧美日韩视频在线一区二区| 亚洲午夜国产一区99re久久| 韩国三级在线一区| 午夜精品偷拍| 免费成人av资源网| 国产精品久久久久久久9999| 欧美自拍偷拍午夜视频| 久久久伊人欧美| 99这里有精品| 欧美韩日一区二区| 欧美激情在线播放| 欧美一区二区国产| 亚洲欧美日韩国产精品| 欧美午夜视频一区二区| 精品999在线观看| 欧美一区不卡| 国产精品乱人伦中文| 久久精品国产一区二区电影| 夜夜嗨av一区二区三区| 一区二区三区视频在线播放| 国产精品亚洲综合色区韩国| 国产精品欧美一区二区三区奶水| 久久久欧美精品| 亚洲免费视频观看| 娇妻被交换粗又大又硬视频欧美| 亚洲乱亚洲高清| 欧美一区二区三区视频| 一区在线免费观看| 欧美三区在线| 亚洲第一中文字幕在线观看| 狠狠色综合网站久久久久久久| 在线观看日韩www视频免费| 欧美精品激情blacked18| 亚洲欧美日韩一区在线| 亚洲人成毛片在线播放| 亚洲天堂网站在线观看视频| 欧美电影打屁股sp| 亚洲欧美综合一区| 欧美bbbxxxxx| 欧美一区2区视频在线观看| 影音先锋亚洲电影| 欧美日本高清| 亚洲人体一区| 免费久久99精品国产| 亚洲国产另类 国产精品国产免费| 国产亚洲欧洲997久久综合| 欧美日韩激情小视频| 亚洲欧美日本伦理| 欧美日韩国产综合新一区| 欧美日韩国产一中文字不卡| 久久精品国语| 欧美日韩视频| 欧美系列精品| 国产九区一区在线| 欧美 亚欧 日韩视频在线| 久久九九全国免费精品观看| 欧美一区二区三区婷婷月色| 国产在线拍揄自揄视频不卡99| 国产亚洲成av人片在线观看桃| 亚洲已满18点击进入久久| 国产精品99久久99久久久二8| 亚洲欧美激情视频在线观看一区二区三区| 欧美日韩国产经典色站一区二区三区| 欧美在线观看一区二区| 国产免费成人av| 国产婷婷色一区二区三区| 欧美一区二区三区视频| 最新亚洲电影| 欧美一区二区三区另类| 国产丝袜一区二区三区| 欧美日韩午夜激情| 亚洲一区二区三区中文字幕在线| 亚洲永久精品大片| 亚洲欧美激情视频在线观看一区二区三区| 久久久精品一区| 久久久久国产精品厨房| 欧美日韩高清区| 亚洲高清不卡在线| 99国产精品久久| 午夜精品99久久免费| 在线观看视频一区二区| 久久岛国电影| 在线电影欧美日韩一区二区私密| 国产亚洲欧美aaaa| 国产欧美日韩视频在线观看| 欧美四级在线观看| 一区二区三区 在线观看视| 久久精品亚洲精品国产欧美kt∨| 国产专区综合网| 国产中文一区| 亚洲日本中文字幕免费在线不卡| 欧美日韩伊人| 国精产品99永久一区一区| 欧美黄色日本| 免费成人网www| 国产精品入口66mio| 在线视频亚洲| 欧美成人综合在线| 亚洲欧美经典视频| 西西裸体人体做爰大胆久久久| 欧美福利视频| 亚洲精品久久久久久久久| 国产精品久久久久一区二区三区| 亚洲精品专区| 久久久久久久久久久一区| 一本一道久久综合狠狠老精东影业| 亚洲欧美日韩国产另类专区| 亚洲美女尤物影院| 亚洲淫性视频| 国产伦精品一区二区三区视频黑人| 欧美综合国产| 欧美暴力喷水在线| 黄色国产精品一区二区三区| 国产精品一区二区三区四区五区| 亚洲理论电影网| 99综合精品| 影音先锋久久| 亚洲精品欧美精品| 亚洲国产精品久久久久秋霞影院| 久久久999精品免费| 亚洲国产精品精华液网站| 亚洲无玛一区| 牛夜精品久久久久久久99黑人| 99精品国产热久久91蜜凸| 欧美国产精品人人做人人爱| 久久国产天堂福利天堂| 欧美影院成年免费版| 亚洲国产精品va| 91久久精品国产91久久性色tv| 亚洲第一区色| 欧美在线视频a| 欧美日韩一区在线观看视频| 欧美日韩国产影院| 麻豆精品一区二区综合av| 国产欧美在线| 久久久精品国产一区二区三区| 欧美精品亚洲二区| 玖玖玖免费嫩草在线影院一区| 伊人色综合久久天天五月婷| 亚洲人成在线观看网站高清| 亚洲一区二区三区影院| 亚洲三级电影全部在线观看高清| 免费在线欧美黄色| 欧美精品激情| 欧美国产欧美亚洲国产日韩mv天天看完整| 欧美亚洲综合另类| 日韩一级大片在线| 亚洲欧洲日夜超级视频| 亚洲精品视频中文字幕| 一区二区三区欧美日韩| 狠狠色丁香婷综合久久| 亚洲国产成人久久综合| 欧美激情片在线观看| 亚洲一区二区三区成人在线视频精品| 欧美成人小视频| 亚洲精品视频一区二区三区| 久久精品综合一区| 久久伊人亚洲| 国产精品电影网站|