1. 从URL中获取参数并转为对象(也可借助第三方的qs包实现)
function getParameters(URL) {
return JSON.parse(`{"${decodeURI(URL.split("?")[1]).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"')}"}`)
}
console.log(getParameters("https://www.google.com.hk/search?q=js+md&newwindow=1"))
2. 检查对象是否为空
function isEmpty(obj) {
return Reflect.ownKeys(obj).length === 0 && obj.constructor === Object;
}
console.log(isEmpty({}))
console.log(isEmpty({a:"not empty"}))
3. 监测设备类型
使用navigator.userAgent
判断是移动设备还是电脑设备:
function judgeDeviceType() {
return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|OperaMini/i.test(navigator.userAgent) ? 'Mobile' : 'PC';
}
judgeDeviceType()
4. 文本复制到剪贴板
async function copyText (text) {
return await navigator.clipboard.writeText(text)
}
copyText('单行代码 前端世界')
5. 计算数组平均值
function average(arr) {
return arr.reduce((a, b) => a + b) / arr.length;
}
average([1,9,18,36])