一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - 13 行 JavaScript 代碼讓你看起來像是高手

13 行 JavaScript 代碼讓你看起來像是高手

2021-12-21 00:59夜色鎮歌 JavaScript

Javascript 可以做許多神奇的事情,也有很多東西需要學習,今天我們介紹幾個短小精悍的代碼段。

Javascript 可以做許多神奇的事情,也有很多東西需要學習,今天我們介紹幾個短小精悍的代碼段。

13 行 JavaScript 代碼讓你看起來像是高手

獲取隨機布爾值(True/False)

使用 Math.random() 會返回 0 到 1 的隨機數,之后判斷它是否大于 0.5,將會得到一個 50% 概率為 True 或 False 的值

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

判斷一個日期是否是工作日

判斷給定的日期是否是工作日

  1. const isWeekday = (date) => date.getDay() % 6 !== 0;
  2. console.log(isWeekday(new Date(2021, 0, 11)));
  3. // Result: true (周一)
  4. console.log(isWeekday(new Date(2021, 0, 10)));
  5. // Result: false (周日)

反轉字符串

有許多反轉字符串的方法,這里使用一種最簡單的,使用了 split(),reverse() 和 join()

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

判斷當前標簽頁是否為可視狀態

瀏覽器可以打開很多標簽頁,下面 的代碼段就是判斷當前標簽頁是否是激活的標簽頁

  1. const isBrowserTabInView = () => document.hidden;
  2. isBrowserTabInView();

判斷數字為奇數或者偶數

取模運算符 % 可以很好地完成這個任務

  1. const isEven = num => num % 2 === 0;
  2. console.log(isEven(2));
  3. // Result: true
  4. console.log(isEven(3));
  5. // Result: false

從 Date 對象中獲取時間

使用 Date 對象的 .toTimeString() 方法轉換為時間字符串,之后截取字符串即可

  1. const timeFromDate = date => date.toTimeString().slice(0, 8);
  2. console.log(timeFromDate(new Date(2021, 0, 10, 17, 30, 0)));
  3. // Result: "17:30:00"
  4. console.log(timeFromDate(new Date()));
  5. // Result: 返回當前時間

保留指定的小數位

  1. const toFixed = (n, fixed) => ~~(Math.pow(10, fixed) * n) / Math.pow(10, fixed);
  2. // Examples
  3. toFixed(25.198726354, 1); // 25.1
  4. toFixed(25.198726354, 2); // 25.19
  5. toFixed(25.198726354, 3); // 25.198
  6. toFixed(25.198726354, 4); // 25.1987
  7. toFixed(25.198726354, 5); // 25.19872
  8. toFixed(25.198726354, 6); // 25.198726

檢查指定元素是否處于聚焦狀態

可以使用 document.activeElement 來判斷元素是否處于聚焦狀態

  1. const elementIsInFocus = (el) => (el === document.activeElement);
  2. elementIsInFocus(anyElement)
  3. // Result: 如果處于焦點狀態會返回 True 否則返回 False

檢查當前用戶是否支持觸摸事件

  1. const touchSupported = () => {
  2. ('ontouchstart' in window || window.DocumentTouch && document instanceof window.DocumentTouch);
  3. }
  4. console.log(touchSupported());
  5. // Result: 如果支持觸摸事件會返回 True 否則返回 False

檢查當前用戶是否是蘋果設備

可以使用 navigator.platform 判斷當前用戶是否是蘋果設備

  1. const isAppleDevice = /Mac|iPod|iPhone|iPad/.test(navigator.platform);
  2. console.log(isAppleDevice);
  3. // Result: 是蘋果設備會返回 True

滾動至頁面頂部

window.scrollTo() 會滾動至指定的坐標,如果設置坐標為(0,0),就會回到頁面頂部

  1. const goToTop = () => window.scrollTo(0, 0);
  2. goToTop();
  3. // Result: 將會滾動至頂部

獲取所有參數的平均值

可以使用 reduce() 函數來計算所有參數的平均值

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

轉換華氏/攝氏

再也不怕處理溫度單位了,下面兩個函數是兩個溫度單位的相互轉換。

  1. const celsiusToFahrenheit = (celsius) => celsius * 9/5 + 32;
  2. const fahrenheitToCelsius = (fahrenheit) => (fahrenheit - 32) * 5/9;
  3. // Examples
  4. celsiusToFahrenheit(15); // 59
  5. celsiusToFahrenheit(0); // 32
  6. celsiusToFahrenheit(-20); // -4
  7. fahrenheitToCelsius(59); // 15
  8. fahrenheitToCelsius(32); // 0

原文鏈接:https://www.toutiao.com/a7043064329184346661/

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人福利在线播放 | 青草碰人人澡人人澡 | 亚洲天堂99| 日本人成年视频在线观看 | jiuse在线 | 国产高清视频免费最新在线 | 草莓视频在线观看免费 | 高清色黄毛片一级毛片 | 亚洲狠狠婷婷综合久久久久网站 | 涩色网| kkkk4444在线看片 | 双性太子 | 成人国产精品一级毛片视频 | 91精品国产高清久久久久久io | 国产一区二区三区日韩 | 色淫阁小说 | 6个老师的尿奴 | 日韩在线视频二区 | 青青草伊人久久 | 色呦呦在线免费观看 | 日本老妇人乱视频 | 欧美精品一国产成人性影视 | 成人国产精品视频频 | 日韩性事 | 艹b小说 | 男人操女人视频 | 日本又大又硬又粗的视频 | videojapan日本孕交孕 | 无遮挡h肉动漫在线观看电车 | 91.prom在线观看国产 | 99精品久久精品一区二区小说 | 四虎麻豆国产精品 | uoco福利姬网站 | 91精品国产色综合久久不卡蜜 | 日本免费三片在线观看 | 亚洲一区二区三区久久精品 | 范冰冰a级一级特级毛片 | 欧美一级欧美三级 | 国产男女乱淫真视频全程播放 | 国产伊人久久 | 日韩欧美亚洲国产高清在线 |