JavaScript 功能强大,但重复编写代码费时费力。这十个实用的 JavaScript 代码片段能简化常见任务,显著提升您的开发效率。现在就开始学习吧!
判断元素是否在视口中
轻松判断元素是否可见:
1
2
3
4
5
6
7
8
9
const isInViewport = (element) => {
const rect = element.getBoundingClientRect();
return (
rect.top >= 0 &&
rect.left >= 0 &&
rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
rect.right <= (window.innerWidth || document.documentElement.clientWidth)
);
};
快速复制文本到剪贴板,无需第三方库:
1
2
3
const copyToClipboard = (text) => {
navigator.clipboard.writeText(text);
};
一行代码随机打乱数组元素顺序:
立即学习“Java免费学习笔记(深入)”;
1
const shuffleArray = (array) => array.sort(() => Math.random() - 0.5);
将嵌套数组转换为一维数组:
1
const flattenArray = (arr) => arr.flat(Infinity);
去除数组中的重复项:
1
const uniqueValues = (array) => [...new Set(array)];
轻松创建随机十六进制颜色代码:
1
const randomHexColor = () => `#${Math.floor(Math.random() * 0xffffff).toString(16).padStart(6, 0)}`;
防止函数被频繁调用,特别适用于搜索输入框:
1
2
3
4
5
6
7
const debounce = (func, delay) => {
let timeoutId;
return (...args) => {
clearTimeout(timeoutId);
timeoutId = setTimeout(() => func(...args), delay);
};
};
判断用户系统是否处于深色模式:
1
const isDarkMode = window.matchMedia && window.matchMedia((prefers-color-scheme: dark)).matches;
简单地将字符串首字母大写:
1
const capitalize = (str) => str.charAt(0).toUpperCase() + str.slice(1);
1
const randomInteger = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min;
总结
这些代码片段能有效节省您的时间和精力。建议您收藏或整合到您的个人工具库中!
了解更多
更多 JavaScript 提示和技巧,请参考原文。
以上就是JavaScript 片段可以节省您的编码时间的详细内容,更多请关注php中文网其它相关文章!