js 刷新当前页面_记好这 24 个 ES6 方法,用来解决实际开发的 JS 问题

记好这 24 个 ES6 方法,用来解决实际开发的 JS 问题

原创 前端小智 大迁世界 昨天

本文主要介绍 24 中 es6 方法,这些方法都挺实用的,本本请记好,时不时翻出来看看。

1.如何隐藏所有指定的元素

b582d4ce7ae35737c385cd71ac23e0d1.png

2.如何检查元素是否具有指定的类?

页面DOM里的每个节点上都有一个classList对象,程序员可以使用里面的方法新增、删除、修改节点上的CSS类。使用classList,程序员还可以用它来判断某个节点是否被赋予了某个CSS类。

5b69542e9bbb0d518b22d356bb0067a9.png

3.如何切换一个元素的类?

e4454bc677f363706807bc27e3c741c0.png

4.如何获取当前页面的滚动位置?

052b7e62c7a938ef742623dd6786806a.png

5.如何平滑滚动到页面顶部

30032c57894921ed749fcbf273223ea3.png

window.requestAnimationFrame() 告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数作为参数,该回调函数会在浏览器下一次重绘之前执行。

requestAnimationFrame:优势:由系统决定回调函数的执行时机。60Hz的刷新频率,那么每次刷新的间隔中会执行一次回调函数,不会引起丢帧,不会卡顿。

6.如何检查父元素是否包含子元素?

d5f21c3eb372ea914be31b5c58757090.png

7.如何检查指定的元素在视口中是否可见?

23d2e1817fc08d02fbd90b7e78bedbc9.png

8.如何获取元素中的所有图像?

5db05c813f59f5488186588ee868168b.png

9.如何确定设备是移动设备还是台式机/笔记本电脑?

f9648f4ff4e62c9f428dd2befffa6070.png

10.How to get the current URL?

10003d39e9faee3a33aa1dba5442fc65.png

11.如何创建一个包含当前URL参数的对象?

665a1aeec0f4b8732161733f9f27e825.png

12.如何将一组表单元素转化为对象?

051eb2046374ac5b08a0ca2b072bb9f5.png

13.如何从对象检索给定选择器指示的一组属性?

f5f10a622f68db105d1c745a75900e00.png

14.如何在等待指定时间后调用提供的函数?

1fe8337f9aade5a8bed14f24b5acb5cb.png

15.如何在给定元素上触发特定事件且能选择地传递自定义数据?

0bbf88638de819380a864566109548b5.png

自定义事件的函数有 Event、CustomEvent 和 dispatchEvent

ef35dae4bd926d1e77fdf981aa311372.png

CustomEvent 可以创建一个更高度自定义事件,还可以附带一些数据,具体用法如下:

831b6c0629a86e31081d1219443755a6.png

其中 detail 可以存放一些初始化的信息,可以在触发的时候调用。其他属性就是定义该事件是否具有冒泡等等功能。

内置的事件会由浏览器根据某些操作进行触发,自定义的事件就需要人工触发。dispatchEvent 函数就是用来触发某个事件:

element.dispatchEvent(customEvent);

上面代码表示,在 element 上面触发 customEvent 这个事件。

49ba27b0500e6a10f74caf983a0ed439.png

16.如何从元素中移除事件监听器?

bcd9d0418c84cff4efbb08ce85554191.png

17.如何获得给定毫秒数的可读格式?

35926c32115bcfa53d2c91afb0279c1a.png

18.如何获得两个日期之间的差异(以天为单位)?

45dfedd140ae87c639d36e780163848c.png

19.如何向传递的URL发出GET请求?

a5b24fa58e57c437b3b9b7f9a9b23c7b.png

20.如何对传递的URL发出POST请求?

7e6571cabf564701b6ef60f02c02807a.png

21.如何为指定选择器创建具有指定范围,步长和持续时间的计数器?

c51572ff3e9ea4342a6084330e503c6b.png

22.如何将字符串复制到剪贴板?

3cc39ba65b46bf2332f3e268d3bb9e68.png

23.如何确定页面的浏览器选项卡是否聚焦?

e93dcac85913f82696b8bb6ce5c4a44b.png

24.如何创建目录(如果不存在)?

0c719d869111466a49bc87da28395c48.png

这里面的方法大都挺实用,可以解决很多开发过程问题,大家就好好利用起来吧。


https://dev.to/madarsbiss/20-modern-es6-snippets-to-solve-practical-js-problems-3n83

作者:Madza 译者:前端小智 来源: dev

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值