13 行 JavaScript 代码让你看起来像是高手
Javascript
可以做许多神奇的事情,也有很多东西需要学习,今天我们介绍几个短小精悍的代码段。
获取随机布尔值(True/False)
使用 Math.random()
会返回 0 到 1 的随机数,之后判断它是否大于 0.5,将会得到一个 50% 概率为 True
或 False
的值
1 | const randomBoolean = () => Math.random() >= 0.5; |
判断一个日期是否是工作日
判断给定的日期是否是工作日
1 | const isWeekday = (date) => date.getDay() % 6 !== 0; |
反转字符串
有许多反转字符串的方法,这里使用一种最简单的,使用了 split()
,reverse()
和 join()
1 | const reverse = str => str.split('').reverse().join(''); |
判断当前标签页是否为可视状态
浏览器可以打开很多标签页,下面 👇🏻 的代码段就是判断当前标签页是否是激活的标签页
1 | const isBrowserTabInView = () => document.hidden; |
判断数字为奇数或者偶数
取模运算符 %
可以很好地完成这个任务
1 | const isEven = num => num % 2 === 0; |
从 Date 对象中获取时间
使用 Date
对象的 .toTimeString()
方法转换为时间字符串,之后截取字符串即可
1 | const timeFromDate = date => date.toTimeString().slice(0, 8); |
保留指定的小数位
1 | const toFixed = (n, fixed) => ~~(Math.pow(10, fixed) * n) / Math.pow(10, fixed); |
检查指定元素是否处于聚焦状态
可以使用 document.activeElement
来判断元素是否处于聚焦状态
1 | const elementIsInFocus = (el) => (el === document.activeElement); |
检查当前用户是否支持触摸事件
1 | const touchSupported = () => { |
检查当前用户是否是苹果设备
可以使用 navigator.platform
判断当前用户是否是苹果设备
1 | const isAppleDevice = /Mac|iPod|iPhone|iPad/.test(navigator.platform); |
滚动至页面顶部
window.scrollTo()
会滚动至指定的坐标,如果设置坐标为(0,0),就会回到页面顶部
1 | const goToTop = () => window.scrollTo(0, 0); |
获取所有参数的平均值
可以使用 reduce()
函数来计算所有参数的平均值
1 | const average = (...args) => args.reduce((a, b) => a + b) / args.length; |
转换华氏/摄氏
再也不怕处理温度单位了,下面两个函数是两个温度单位的相互转换。
1 | const celsiusToFahrenheit = (celsius) => celsius * 9/5 + 32; |
感谢阅读,希望你会有所收获😄