分享7个杀手级JS小技巧

这篇文章主要分享的是7个杀手级JS小技巧,主要分享的小技巧有数组乱序、复制到剪贴板、数组去重、检测黑暗模式、滚动到顶部,下文章详细代码实现,需要的小伙伴可以参考一下

一、数组乱序

在使用需要某种程度的随机化的算法时,你会经常发现洗牌数组是一个相当必要的技能。下面的片段以O(n log n)的复杂度对一个数组进行就地洗牌。

const shuffleArray = (arr) => arr.sort(() => Math.random() - 0.5) // 测试 const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; console.log(shuffleArray(arr))

二、复制到剪贴板

Web应用程序中,复制到剪贴板因其对用户的便利性而迅速流行起来。

const copyToClipboard = (text) =>   navigator.clipboard?.writeText && navigator.clipboard.writeText(text) // 测试 copyToClipboard("Hello World!")

注意:根据caniuse,该方法对93.08%的全球用户有效。所以必须检查用户的浏览器是否支持该API。为了支持所有用户,你可以使用一个输入并复制其内容。

三、数组去重

每种语言都有自己的哈希列表的实现,在JavaScript中,它被称为Set。你可以使用Set数据结构轻松地从一个数组中获得唯一元素。

const getUnique = (arr) => [...new Set(arr)] // 测试 const arr = [1, 1, 2, 3, 3, 4, 4, 5, 5]; console.log(getUnique(arr))

四、检测黑暗模式

随着黑暗模式的普及,如果用户在他们的设备中启用了黑暗模式,那么将你的应用程序切换到黑暗模式是非常理想的。幸运的是,可以利用媒体查询来使这项任务变得简单。

const isDarkMode = () =>   window.matchMedia &&   window.matchMedia("(prefers-color-scheme: dark)").matches // 测试 console.log(isDarkMode())

根据caniuse的数据,matchMedia的支持率为97.19%。

五、滚动到顶部

初学者经常发现自己在正确滚动元素的过程中遇到困难。最简单的滚动元素的方法是使用scrollIntoView方法。添加行为。"smooth "来实现平滑的滚动动画。

const scrollToTop = (element) =>   element.scrollIntoView({ behavior: "smooth", block: "start" })

六、滚动到底部

就像scrollToTop方法一样,scrollToBottom方法也可以用scrollIntoView方法轻松实现,只需将块值切换为结束即可

const scrollToBottom = (element) =>   element.scrollIntoView({ behavior: "smooth", block: "end" })

七、生成随机颜色

你的应用程序是否依赖随机颜色的生成?不用再看了,下面的代码段可以满足你的要求

const generateRandomHexColor = () =>   `#${Math.floor(Math.random() * 0xffffff) .toString(16)}`;

到此这篇关于7个杀手级JS小技巧的文章就介绍到这了,更多相关JS小技巧内容请搜索0133技术站以前的文章或继续浏览下面的相关文章希望大家以后多多支持0133技术站!

以上就是分享7个杀手级JS小技巧的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » JavaScript 教程