30 个实用的 JavaScript 代码片段(下篇)

2024-12-30 20:12:05   小编

30 个实用的 JavaScript 代码片段(下篇)

在 JavaScript 编程的世界里,掌握一些实用的代码片段能够极大地提高开发效率。本文将为您继续介绍 30 个实用的 JavaScript 代码片段。

1. 数组去重

function uniqueArray(arr) {
  return Array.from(new Set(arr));
}

2. 计算数组元素的平均值

function averageArray(arr) {
  return arr.reduce((a, b) => a + b) / arr.length;
}

3. 检查对象是否为空

function isEmptyObject(obj) {
  return Object.keys(obj).length === 0;
}

4. 深拷贝对象

function deepCopy(obj) {
  return JSON.parse(JSON.stringify(obj));
}

5. 生成随机颜色

function randomColor() {
  let letters = '0123456789ABCDEF';
  let color = '#';
  for (let i = 0; i < 6; i++) {
    color += letters[Math.floor(Math.random() * 16)];
  }
  return color;
}

6. 平滑滚动到页面顶部

function scrollToTop() {
  window.scrollTo({
    top: 0,
    behavior:'smooth'
  });
}

7. 检测设备类型(桌面/移动)

function detectDeviceType() {
  const userAgent = navigator.userAgent;
  if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(userAgent)) {
    return'mobile';
  } else {
    return 'desktop';
  }
}

8. 格式化日期

function formatDate(date, format) {
  const options = {
    year: 'numeric',
    month: '2-digit',
    day: '2-digit'
  };
  return new Date(date).toLocaleDateString('en-US', options);
}

9. 实现节流函数

function throttle(func, delay) {
  let lastCall = 0;
  return function(...args) {
    const now = new Date().getTime();
    if (now - lastCall > delay) {
      func(...args);
      lastCall = now;
    }
  };
}

10. 实现防抖函数

function debounce(func, delay) {
  let timer;
  return function(...args) {
    clearTimeout(timer);
    timer = setTimeout(() => {
      func(...args);
    }, delay);
  };
}

以上就是为您介绍的 30 个实用的 JavaScript 代码片段(下篇)中的部分内容,希望这些代码片段能够对您的开发工作有所帮助,让您的 JavaScript 编程更加高效和便捷。

TAGS: JavaScript 实用技巧 代码片段整理 JavaScript 下篇教程

欢迎使用万千站长工具!

Welcome to www.zzTool.com