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 代码片段,希望对您的开发工作有所帮助。在后续的内容中,我们还将为您带来更多精彩实用的代码片段。

TAGS: 前端开发 编程技巧 JavaScript 实用技巧 JavaScript 代码片段

欢迎使用万千站长工具!

Welcome to www.zzTool.com