技术文摘
30 个实用的 JavaScript 代码片段(上)
2024-12-30 20:14:25 小编
30 个实用的 JavaScript 代码片段(上)
在 JavaScript 的世界里,掌握一些实用的代码片段可以极大地提高开发效率。以下为您介绍其中的 15 个。
1. 数组去重
function uniqueArray(arr) {
return Array.from(new Set(arr));
}
2. 数组扁平化
function flattenArray(arr) {
return arr.flat(Infinity);
}
3. 计算数组平均值
function averageOfArray(arr) {
return arr.reduce((a, b) => a + b, 0) / arr.length;
}
4. 检查对象是否为空
function isEmptyObject(obj) {
return Object.keys(obj).length === 0 && obj.constructor === Object;
}
5. 深拷贝对象
function deepCopy(obj) {
return JSON.parse(JSON.stringify(obj));
}
6. 生成随机字符串
function generateRandomString(length) {
let result = '';
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
for (let i = 0; i < length; i++) {
result += characters.charAt(Math.floor(Math.random() * characters.length));
}
return result;
}
7. 格式化货币
function formatCurrency(amount) {
return amount.toLocaleString('en-US', { style: 'currency', currency: 'USD' });
}
8. 检查数组是否包含某个元素
function containsElement(arr, element) {
return arr.includes(element);
}
9. 防抖函数
function debounce(func, delay) {
let timer;
return function (...args) {
clearTimeout(timer);
timer = setTimeout(() => {
func.apply(this, args);
}, delay);
};
}
10. 节流函数
function throttle(func, delay) {
let lastCallTime = 0;
return function (...args) {
const now = new Date().getTime();
if (now - lastCallTime >= delay) {
func.apply(this, args);
lastCallTime = now;
}
};
}
11. 字符串首字母大写
function capitalizeFirstLetter(str) {
return str.charAt(0).toUpperCase() + str.slice(1);
}
12. 获取 URL 参数
function getUrlParams(url) {
const params = new URLSearchParams(new URL(url).search);
const result = {};
for (const [key, value] of params.entries()) {
result[key] = value;
}
return result;
}
13. 滚动到页面顶部
function scrollToTop() {
window.scrollTo(0, 0);
}
14. 检测浏览器类型
function getBrowserType() {
const userAgent = navigator.userAgent;
if (userAgent.indexOf('Edge') > -1) {
return 'Edge';
} else if (userAgent.indexOf('Chrome') > -1) {
return 'Chrome';
} else if (userAgent.indexOf('Firefox') > -1) {
return 'Firefox';
} else if (userAgent.indexOf('Safari') > -1) {
return 'Safari';
} else {
return 'Unknown';
}
}
15. 数字千分位分隔
function formatNumberWithCommas(num) {
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
}
以上就是 15 个实用的 JavaScript 代码片段,希望对您的开发工作有所帮助。在后续的内容中,我们还将为您带来更多精彩实用的代码片段。
- GAN 生成图像能卡音效,这个 Python 包几行代码即可
- 7 款适合初学者的 Python 工具,超棒
- 哈佛与 MIT 学者合作 创矩阵乘法运算最快纪录
- 苹果专利或表明 Apple VR 头显将具备 IPD 瞳距调整机制
- 40 年前 C 语言之父打造的 OS 重现 曾被 Windows 和 Linux 借鉴
- 开发者出海成功的关键:找到“好搭档”即成功一半
- 鸿蒙内核中断切换源码分析 | 汇编解读全过程
- 在 Android 手机上配置 Python 环境的方法
- 软件测试的未来:2021 年的 15 大软件测试趋势关注点
- 十点详析 C++异常处理 助你深度理解其机制
- 微服务面试中必问的 Dubbo 详解,助您不再担忧求职
- 以编辑器视角探究 String 的 4 类 26 种方法
- 从低代码走向无代码:可视化逻辑的编排
- 令人惊叹!强大的 SVG 滤镜
- SREs 与 DevOps 的十大开源项目