JavaScript常用工具函数大全

JavaScript常用工具函数大全

本文将收集整理一些常用的 JavaScript 工具函数,旨在帮助开发者在日常工作中更加高效地编写代码。

1. 数组相关函数

1.1 isArray()

判断一个值是否是数组。

function isArray(value) {
  return Array.isArray(value);
}

示例:

isArray([]);                //true
isArray({});                //false

1.2 flatten()

将嵌套的数组打平成一维数组。

function flatten(arr, result = []) {
  arr.forEach(item => {
    if(Array.isArray(item)) {
      flatten(item, result);
    }else{
      result.push(item);
    }
  });
  return result;
}

示例:

flatten([1, 2, [3, 4], [5, 6, [7, 8]]]);                //[1, 2, 3, 4, 5, 6, 7, 8]

2. 字符串相关函数

2.1 capitalize()

将字符串首字母大写。

function capitalize(str) {
  return str.charAt(0).toUpperCase() + str.slice(1);
}

示例:

capitalize('hello world');            //'Hello world'

2.2 toCamelCase()

将横杠或下划线连接的字符串转换为驼峰式。

function toCamelCase(str) {
  return str.replace(/[-_](.)/g, (_, c) => {
    return c.toUpperCase();
  });
}

示例:

toCamelCase('my-name-is-john');                //'myNameIsJohn'

3. 时间日期相关函数

3.1 formatDate()

将日期对象格式化为字符串。

function formatDate(d, format) {
    const padZero = (num) => String(num).padStart(2, '0');
    const year = d.getFullYear();
    const month = padZero(d.getMonth() + 1);
    const date = padZero(d.getDate());
    const hours = padZero(d.getHours());
    const minutes = padZero(d.getMinutes());
    const seconds = padZero(d.getSeconds());
    const ms = padZero(d.getMilliseconds());
    const map = {
        'yyyy': year,
        'MM': month,
        'dd': date,
        'HH': hours,
        'mm': minutes,
        'ss': seconds,
        'SSS': ms
    };
    return format.replace(/yyyy|MM|dd|HH|mm|ss|SSS/g, match => map[match]);
}

示例:

const d = new Date();
formatDate(d, 'yyyy-MM-dd HH:mm:ss.SSS');                //'2022-03-11 22:44:23.377'

3.2 getTimeZone()

获取时区。

function getTimeZone() {
  const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
  return timeZone;
}

示例:

getTimeZone();                //'Asia/Shanghai'

4. 其他函数

4.1 throttle()

控制函数的执行频率。

function throttle(func, delay = 100) {
  let timer = null;
  return function(...args) {
    if(timer) {
      return;
    }
    timer = setTimeout(() => {
      func.apply(this, args);
      timer = null;
    }, delay);
  }
}

示例:

function sayHi() {
  console.log('hello');
}
const throttledFn = throttle(sayHi, 5000);
throttledFn();                //'hello'  5秒后再次执行不会立即输出

结语

以上是笔者整理的一些 JavaScript 常用工具函数,希望能够对您的开发工作有所帮助。如有错误或不足之处,敬请指正。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript常用工具函数大全 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Javascript Array splice 方法

    以下是关于JavaScript Array splice方法的完整攻略。 JavaScript Array splice方法 JavaScript Array splice方法用于向数组中添加或删除元素。该方法会改变原始数组,并返回被删除元素。 下面是一个使用splice方法的示例: var arr = [1, 2, 3, 4, 5]; arr.splice…

    JavaScript 2023年5月11日
    00
  • 详解JavaScript中jQuery和Ajax以及JSONP的联合使用

    详解JavaScript中jQuery和Ajax以及JSONP的联合使用 概述 在现代前端开发中,通过AJAX技术可以实现无需整页刷新的异步加载数据,从而提升用户体验。而jQuery作为目前最流行的JavaScript库,为我们提供了非常便捷的Ajax操作API。除此之外,由于浏览器的同源策略,我们需要借助JSONP跨域获取到其他域名下的数据,在此过程中jQ…

    JavaScript 2023年6月11日
    00
  • Javascript Date getUTCMinutes() 方法

    以下是关于JavaScript Date对象的getUTCMinutes()方法的完整攻略,包括两个示例说明。 JavaScript Date对象的getUTCMinutes()方法 JavaScript Date对象的getUTCMinutes()方法返回日期的分钟数,以协调世界(UTC)为基准。返回值是一个0到59之间的整数。 下面是使用Date对象的U…

    JavaScript 2023年5月11日
    00
  • javascript删除数组元素的七个方法示例

    JavaScript删除数组元素的七个方法示例 在JavaScript中,删除数组元素是经常会遇到的一个问题。本文将详细介绍七种不同的方法来删除JavaScript数组中的元素。 方法一:splice()方法 splice()方法是JavaScript中最通用的删除数组元素的方法。使用此方法可以从数组中删除任意数量的元素,通过指定要删除的元素的索引位置和要删…

    JavaScript 2023年5月27日
    00
  • js判断日期时间有效性的方法

    下面就给大家详细讲解一下js判断日期时间有效性的方法。 前言 在开发web应用程序时,时间日期是一个常见的数据类型。在应用程序中,我们需要对用户输入的时间日期进行校验,以保证数据的正确性。本文将介绍如何使用js对时间日期的有效性进行判断。 方法一:正则表达式 使用正则表达式判断日期时间的有效性是一种常用且简单的方法。JS中对日期进行比较主要用到了Date对象…

    JavaScript 2023年5月28日
    00
  • vue使用axios实现excel文件下载的功能

    下面是使用Vue和Axios实现Excel文件下载的攻略,过程中将会包含两条示例说明。 准备工作 安装依赖:npm install –save axios file-saver xlsx 其中,axios 是我们将用来与后端交互的网络请求库;file-saver 是将文件保存到本地的库;xlsx 将Excel文件转换为二进制格式。 在 main.js 中导…

    JavaScript 2023年6月11日
    00
  • JavaScript实现Base64编码转换

    实现Base64编码转换可以通过JavaScript的btoa()和atob()函数来实现。 btoa()函数 btoa()函数用于将字符串转换为Base64编码格式。该函数的语法如下: let encodedData = window.btoa(stringToEncode); 其中,encodedData为转换后的Base64编码字符串,stringTo…

    JavaScript 2023年5月20日
    00
  • js获取iframe中的window对象的实现方法

    获取iframe中的window对象是我们在进行Web前端开发中经常需要面对的问题。这里提供两种方法来获取iframe中的window对象。 方法一:使用iframe元素的contentWindow属性 我们可以使用iframe元素的contentWindow属性来获取iframe中的window对象。该属性返回对iframe窗口/框架的 window 对象…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部