JavaScript中的20个小技巧

这篇具有很好参考价值的文章主要介绍了JavaScript中的20个小技巧。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. 箭头函数可在没有参数时更简洁

箭头函数用于定义并创建函数的常用方式。如果没有参数,则可以使用下面的代码:

const logMessage = () => {
  console.log('Hello, World!');
};
  1. 使用setInterval()实现计时器

setInterval()是一个用于重复调用函数的内置函数。下面是一个setInterval()计时器的例子:

let count = 0;
const intervalId = setInterval(() => {
  console.log(count);
  count++;
  if (count > 5) {
    clearInterval(intervalId);
  }
}, 1000);
  1. 数组查找/搜索

使用Array.find()方法可以快速查找数组中的一个对象。下面是一个例子:

const users = [
  { id: 1, name: 'John' },
  { id: 2, name: 'Jane' },
  { id: 3, name: 'Bob' },
];
const user = users.find((user) => user.id === 2);
console.log(user); // { id: 2, name: 'Jane' }
  1. 字符串重复

使用字符串重复技巧可以将某个字符串重复多次。下面是一个例子:

const message = 'Hello, World! ';
const repeatedMessage = message.repeat(3);
console.log(repeatedMessage); // "Hello, World! Hello, World! Hello, World! "
  1. 数字格式化

通过使用Intl.NumberFormat可以格式化数字, 下面是一个例子:

const number = 12345.6;
const formatter = new Intl.NumberFormat('en-US', {
  style: 'currency',
  currency: 'USD',
});
console.log(formatter.format(number)); // "$12,345.60"
  1. 将对象数组转换为对象

使用reduce()方法将对象数组转换为单个对象。这是一个例子:

const users = [
  { id: 1, name: 'John' },
  { id: 2, name: 'Jane' },
  { id: 3, name: 'Bob' },
];
const usersObject = users.reduce((obj, user) => {
  obj[user.id] = user;
  return obj;
}, {});
console.log(usersObject);
/*
{
  "1": {
    "id": 1,
    "name": "John"
  },
  "2": {
    "id": 2,
    "name": "Jane"
  },
  "3": {
    "id": 3,
    "name": "Bob"
  }
}
*/
  1. 空字符串检查

使用短路运算符进行空字符串检查,这是一个例子:

const name = '';
const displayName = name || 'Anonymous';
console.log(displayName); // "Anonymous"
  1. 使用Object.values()获取对象值

使用Object.values()获取对象的值。这是一个例子:

const user = {
  id: 1,
  name: 'John',
  age: 30,
};
const values = Object.values(user);
console.log(values); // [1, "John", 30]
  1. 解构对象元素

使用对象解构可以快速创建变量并设置其值。这是一个例子:

const user = {
  id: 1,
  name: {
    first: 'John',
    last: 'Doe',
  },
};
const {
  id,
  name: { first, last },
} = user;
console.log(`${first} ${last} (${id})`); // "John Doe (1)"
  1. Object.entries()函数

使用Entries()函数将对象转换成键-值对数组,这是一个例子:

const user = {
  id: 1,
  name: 'John',
  age: 30,
};
const entries = Object.entries(user);
console.log(entries); // [["id", 1], ["name", "John"], ["age", 30]]
  1. Async/await

使用async/await来处理异步操作。这是一个例子:

async function getUser() {
  const response = await fetch('/api/user');
  const user = await response.json();
  return user;
}
  1. 将图片转换为Base64格式

使用Canvas API可以将图片转换成Base64格式,这是一个例子:

const img = document.createElement('img');
img.src = 'example.png';
img.onload = () => {
  const canvas = document.createElement('canvas');
  canvas.width = img.width;
  canvas.height = img.height;
  const context = canvas.getContext('2d');
  context.drawImage(img, 0, 0);
  const base64 = canvas.toDataURL('image/png');
};
  1. 数组中过滤空值

使用Boolean()函数过滤数组中的空值,这是一个例子:

const array = ['apple', null, 'banana', undefined, '', 'orange'];
const filteredArray = array.filter(Boolean);
console.log(filteredArray); // ["apple", "banana", "orange"]
  1. 检查对象是否为空

使用Object.keys()检查对象是否为空,这是一个例子:

const obj = {};
const isEmpty = Object.keys(obj).length === 0;
console.log(isEmpty); // true
  1. 使用reduce()合并数组中的值

使用reduce()合并数组中的值,这是一个例子:

const numbers = [10, 20, 30];
const sum = numbers.reduce((total, number) => total + number, 0);
console.log(sum); // 60
  1. 数组去重

使用Set()和Array.from()方法实现数组去重,这是一个例子:

const array = [1, 2, 2, 3, 3, 3, 4, 5, 5];
const uniqueArray = Array.from(new Set(array));
console.log(uniqueArray); // [1, 2, 3, 4, 5]
  1. 字符串在数组中搜索

使用字符串的indexOf()方法在数组中搜索字符串,这是一个例子:

const array = ['apple', 'banana', 'orange'];
const searchString = 'banana';
const index = array.indexOf(searchString);
console.log(index); // 1
  1. 使用rest参数传递变量

使用rest参数传递变量可以将函数定义更加灵活,这是一个例子:

function sum(...numbers) {
  return numbers.reduce((total, number) => total + number, 0);
}
console.log(sum(1, 2, 3)); // 6
console.log(sum(4, 5, 6, 7)); // 22
  1. 筛选数组

使用Array.filter()方法筛选数组,这是一个例子:

const users = [
  { id: 1, name: 'John' },
  { id: 2, name: 'Jane' },
  { id: 3, name: 'Bob' },
];
const filteredUsers = users.filter((user) => user.id !== 2);
console.log(filteredUsers);
/*
[
  {
    "id": 1,
    "name": "John"
  },
  {
    "id": 3,
    "name": "Bob"
  }
]
*/
  1. 正则表达式搜索

使用正则表达式搜索字符串,这是一个例子:文章来源地址https://www.toymoban.com/news/detail-405218.html

const text = 'The quick brown fox jumps over the lazy dog.';
const pattern = /q[a-z]+/g;
const matches = text.match(pattern);
console.log(matches); // ["quick"]

到了这里,关于JavaScript中的20个小技巧的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 深入解析JavaScript中箭头函数的用法

    🧑‍🎓 个人主页: 《爱蹦跶的大A阿》 🔥 当前正在更新专栏: 《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​  ​         箭头函数(Arrow function)是JavaScript ES6中引入的一大特性。箭头函数与传统函数有一些区别,可以帮助我们简化代码并处理一些棘

    2024年01月20日
    浏览(50)
  • 【JavaScript解析】ES6定义变量与箭头函数详解

    箭头函数可以说是ES6的一大亮点,使用箭头函数,可以简化编码过程,使代码更加的简洁 本文由千锋前端老师独家创作,主要给大家介绍了关于ES6中箭头函数的相关资料,文中通过实例代码介绍的非常详细,觉得有帮助的话可以【关注】持续追更~ 我们现在知道定义(声明)一个变

    2024年02月05日
    浏览(48)
  • JS中的箭头函数

    在JavaScript中,箭头函数是一种简化的函数语法,它在ES6(ECMAScript 2015)引入。箭头函数的语法比传统的function表达式更简洁,同时还有一些特性,例如继承外部作用域的this值。 箭头函数的基本语法如下:   当箭头函数只有一个参数时,可以省略括号:   当函数体只包含一个

    2024年02月03日
    浏览(41)
  • ES6中的箭头函数(arrow function)与普通函数的不同之处

    前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一个系统而又亲切的学习平台。在这个

    2024年02月10日
    浏览(39)
  • javascript常见100问|前端基础知识|问ajax-fetch-axios-区别请用 XMLHttpRequestfetch 实现 ajax节流和防抖px em rem vw/箭头函数的缺点

    HTML CSS JS HTTP 等基础知识是前端面试的第一步,基础知识不过关将直接被拒。本章将通过多个面试题,讲解前端常考的基础知识面试题,同时复习一些重要的知识点。 扎实的前端基础知识,是作为前端工程师的根本。基础知识能保证最基本的使用,即招聘进来能干活,能产出

    2024年04月27日
    浏览(51)
  • python版:使用TotalSegmentator工具可在1分钟内自动分割全身117个器官,附批量技巧

    TotalSegmentator 用于对 CT 图像中超过 117 个类别进行分割的工具。它接受了各种不同 CT 图像(不同扫描仪、机构、协议等)的训练,因此应该适用于大多数图像。大部分训练数据集可以从Zenodo下载(1228 个主题)。您还可以在totalsegmentator.com上在线试用该工具。 一句话概要:

    2024年04月11日
    浏览(62)
  • 语音识别神器 Whisper 的几个小技巧

    OpenAI开源的免费离线语音识别神器Whisper,我在安装使用后发现一些问题,于是搜了半天最终汇总了这几个主要的小技巧,希望对大家有帮助,不用满世界再搜了。 我主要用于中文的识别,所以就只说中文相关的了,我的环境是: 系统:Ubuntu22.04 Python:3.9.9(conda) 具体怎么正常

    2024年02月04日
    浏览(47)
  • 试试这 6 个小技巧,提升 EF Core 性能

    Entity FrameWork(简称 EF)以面向对象的方式操作数据库给开发人员带来了很大的便利性,但其性能问题从面世以来就一直就被广大的 .NET 生态开发技术人员所吐槽,然而,它真的那么不堪使用吗?试试下面这 6 个小技巧,瞬间极大提升 EF Core 性能: AsNoTracking 在项目开发的时候

    2024年02月04日
    浏览(37)
  • 跨境电商独立站提升用户体验感的五个小技巧

    近年来,随着跨境电商的快速发展,越来越多的小伙伴们开始涉足独立站。但是,在众多的跨境电商网站中,如何让用户选择你的网站呢?这就需要我们从用户体验角度出发,不断完善独立站的功能,提升用户的体验感。那么,今天东哥就来给大家分享一些提升跨境电商独立

    2024年02月01日
    浏览(46)
  • 掌握这2个小技巧,让你轻松学会手机拍照计算数量

    你们有没有过计数的烦恼呢?像是那些在工地上班,或是从事仓库管理员的小伙伴,难免时常需要盘点货物数量,如果少还好,多的话则是一件非常头疼的事情,例如数一半忘记数到哪里了,或是中途被其它事情打断,导致需要重头来过,这样非常的浪费时间。 其实,我有几

    2024年02月09日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包