技术文摘
当下可用的 10 个 JavaScript 代码段
2024-12-31 09:09:00 小编
当下可用的 10 个 JavaScript 代码段
在 JavaScript 的世界里,掌握一些实用的代码段可以极大地提高开发效率。以下为您介绍 10 个当下可用的 JavaScript 代码段。
- 数组去重
function uniqueArray(arr) {
return Array.from(new Set(arr));
}
- 数组扁平化
function flattenArray(arr) {
return arr.flat(Infinity);
}
- 检查对象是否为空
function isEmptyObject(obj) {
return Object.keys(obj).length === 0 && obj.constructor === Object;
}
- 生成随机字符串
function generateRandomString(length) {
let result = '';
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
const charactersLength = characters.length;
for (let i = 0; i < length; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
}
- 深拷贝对象
function deepCopy(obj) {
return JSON.parse(JSON.stringify(obj));
}
- 防抖函数
function debounce(func, delay) {
let timer;
return function (...args) {
clearTimeout(timer);
timer = setTimeout(() => {
func.apply(this, args);
}, delay);
};
}
- 节流函数
function throttle(func, delay) {
let lastCall = 0;
return function (...args) {
const now = new Date().getTime();
if (now - lastCall >= delay) {
func.apply(this, args);
lastCall = now;
}
};
}
- 格式化日期
function formatDate(date, format) {
const year = date.getFullYear();
const month = (date.getMonth() + 1).toString().padStart(2, '0');
const day = date.getDate().toString().padStart(2, '0');
const hours = date.getHours().toString().padStart(2, '0');
const minutes = date.getMinutes().toString().padStart(2, '0');
const seconds = date.getSeconds().toString().padStart(2, '0');
format = format.replace('YYYY', year);
format = format.replace('MM', month);
format = format.replace('DD', day);
format = format.replace('HH', hours);
format = format.replace('mm', minutes);
format = format.replace('ss', seconds);
return format;
}
- 简单的轮询函数
function poll(fn, delay, timeout) {
let timer;
let startTime = new Date().getTime();
function pollInternal() {
if (new Date().getTime() - startTime > timeout) {
clearTimeout(timer);
return;
}
const result = fn();
if (result) {
clearTimeout(timer);
return;
}
timer = setTimeout(pollInternal, delay);
}
pollInternal();
}
- 判断数据类型
function getType(obj) {
return Object.prototype.toString.call(obj).slice(8, -1);
}
这些代码段在实际开发中都非常实用,能够帮助您解决常见的问题,提高代码的质量和效率。希望您能将它们灵活运用到您的项目中,让开发工作更加轻松愉快。
TAGS: JavaScript 技术 代码示例 JavaScript 代码段 当下可用
- Go语言flag包中如何确定用户实际输入的标志
- Golang flag 包:如何判断子命令中的实际输入 Flag
- 解决Python库Slate和pdfminer安装问题的方法
- PHP 模拟人工跳转页面并获取加密超链接的方法
- Golang 中带 default 分支的 select 语句无法接收 os.Signal 的原因
- Lithe 播种者:轻松实现数据库填充
- 安装 Slate 与 Pdfminer 库时遇问题怎么解决
- Python解析命令手册中命令的方法
- PHP与Go中引址和取值的区别
- Colly初体验 解决无效内存地址或nil指针引用错误方法
- 去除字符串中含HTML标签的中间部分,仅保留文本内容的方法
- Go 语言中如何用正则表达式匹配并替换括号与方括号内内容
- WordPress评论功能集成到自定义PHP页面的方法
- 命令行模式下 PHP Redis 提示 Class Redis not found 的原因
- Linux 系统中如何重新编译已安装的 Python 3