JS有哪些好用的小技巧呢?
Admin 2022-10-31 群英技术资讯 497 次浏览
这篇文章我们来了解“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)}`;
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了React hooks的优缺点详解,帮助大家更好的理解和学习使用React,感兴趣的朋友可以了解下
这篇文章主要为大家详细介绍了js实现自定义下拉框,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
怎么利用配置文件来管理多个 Node.js 进程?本篇文章给大家介绍一下PM2用配置文件管理多个Node.js项目的方法,希望对大家有所帮助!
这篇文章主要介绍的是Vue 组件组织结构及组件注册,为了能在模板中使用,这些组件必须先注册以便 Vue 能够识别。这里有两种组件的注册类型:全局注册和局部注册。至此,我们的组件都只是通过 Vue.component 全局注册的,文章学详细内容,需要的朋友可以参考一下
vue中的过滤器分为两种:局部过滤器和全局过滤器。过滤器可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示(官方文档)
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008