javascript有哪些代码可以单行解决的

2024年09月17日 建站教程

现在随着javascript功能的完善,代码也越来越简单了,下面web建站小编给大家介绍一些可以用单行代码就可以实现的功能!

1、链接url获取参数并转为对象

const getParameters = URL => JSON.parse(`{"${decodeURI(URL.split("?")[1]).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"')}"}`)
getParameters("https://lmcjl.com/?id=ipkd&type=web");
//{id: 'ipkd', type: 'web'}

2、检查对象是否为空

const isEmpty = obj => Reflect.ownKeys(obj).length === 0 && obj.constructor === Object;
isEmpty({}) //true

3、生成随机十六进制颜色

const randomHexColor = () => `#${Math.floor(Math.random() * 0xffffff).toString(16).padEnd(6, "0")}`
console.log(randomHexColor())
//#4e9946

4、字符串反转

const reverse = str => str.split('').reverse().join('');
console.log(reverse('www.lmcjl.com'))
//nc.dkpi.www

5、检查当前选项卡是否在后台

const isTabActive = () => !document.hidden; 
console.log(isTabActive()) //true

6、检测元素是否处于焦点

const elementIsInFocus = (el) => (el === document.activeElement);
elementIsInFocus('输入需要判断的元素')
// 元素处于焦点返回true,反之返回false

7、获取设备类型(判断当前是PC端还是手机端)

const judgeDeviceType = () => /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|OperaMini/i.test(navigator.userAgent) ? 'Mobile' : 'PC';
console.log(judgeDeviceType())

8、查询指定时间是否为工作日

const isWeekday = (date) => date.getDay() % 6 !== 0;
console.log(isWeekday(new Date(2022, 10, 11)))

9、两日期之间相差的天数

const dayDiff = (date1, date2) => Math.ceil(Math.abs(date1.getTime() - date2.getTime()) / 86400000);
console.log(dayDiff(new Date("2022-10-11"), new Date("2022-10-22")))
//11

10、计算数组平均值

const average = (arr) => arr.reduce((a, b) => a + b) / arr.length;
console.log(average([1,7,11,15]))
//8.5

本文链接:http://so.lmcjl.com/news/13261/

展开阅读全文
相关内容