技术文摘
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 代码片段,希望对您的开发工作有所帮助。在后续的内容中,我们还将为您带来更多精彩实用的代码片段。
- ASP.NET服务器端CheckBoxList控件
- ASP.NET中HTML Map控件概述
- ASP.NET中TreeView的浅述
- ASP.NET编程中嵌套If语句语法的浅要分析
- ASP.NET Postback程序处理全过程
- ASP.NET与Web窗体页的介绍
- ASP.NET中Web.config文件探秘
- ASP.NET编程里日期与时间处理的浅要分析
- ASP.NET中Panel控件的相关介绍
- ASP.NET里JavaScript调用c#方法
- Eclipse JDT六大便捷特性一览
- ASP.NET访问权限浅析
- ASP.NET编程中弹窗报警提示的实现浅析
- C++标准委员会决定从C++0x中移除concepts特性
- ASP.NET调用存储过程的两种方法简析