javaScript进阶+ES6特性
js高级部分,前端进阶必学
万物之恋
我思故我在
展开
-
JavaScript ES6知识点汇总(上)
reflect是ES6引入的一个新的对象,他的主要作用有两点,一是将原生的一些零散分布在object、function或者全局函数里的方法(如apply、delete、get、set等等),统一整合到Reflect上,这样可以更加方便更加统一的管理一些原生API,其次就是因为Proxy可以改写默认的原生API,而Reflect也起到了一个备份原生API的作用。简单介绍下,js es6的一些新特性。这里是万物之恋,我们下次再见了。原创 2023-02-16 19:54:45 · 429 阅读 · 0 评论 -
一些封装好的常用JavaScript方法(下)
封装一些常用JavaScript方法(下)上篇在这里:一些封装好的常用JavaScript方法(上)封装原生js的 Ajaxfunction ajax(method, url, callback, data, flag) { var xhr; flag = flag || true; method = method.toUpperCase(); if (window.XMLHttpRequest) { xhr = new XMLHttpRequest原创 2022-05-26 21:52:00 · 121 阅读 · 0 评论 -
一些封装好的常用JavaScript方法(上)
一些封装好的常用JavaScript方法(上)函数柯理化function curryItem(func) { var length = func.length, args = []; var result = function (arg) { args.push(arg); length--; if (length <= 0) { return func.apply(this, args);原创 2022-05-26 13:55:36 · 135 阅读 · 0 评论 -
常见的几个JavaScript兼容问题及解决方案
常见的几个JavaScript兼容问题及解决方案事件对象的兼容e = ev || window.event;滚动事件的兼容scrollTop = document.documentElement.scrollTop || document.body.scrollTop;阻止冒泡事件的兼容if(e.stopPropagation){ e.stopPropagation();}else{ e.cancelBubble = true;}阻止浏览器默认行为的兼容原创 2022-05-02 12:24:15 · 1147 阅读 · 0 评论 -
JavaScript判断用户使用的浏览器
JavaScript判断用户使用的浏览器填坑之判断用户使用设备问题,上篇请看这里如何使用JavaScript来判断用户设备类型。在这里,我们用到的还是 JavaScript 中的 navigator 对象。因为比较简单,我就直接上代码了。<script type="text/javascript"> let userBrowser = navigator.userAgent.toLowerCase(); console.log(userBrowser); if原创 2022-05-01 23:15:26 · 1656 阅读 · 0 评论 -
简单理解js中的防抖和节流
简单理解js中的防抖和节流 就结果而言,防抖和节流就是为了防止事件在短时间内多次触发而产生的两种解决方案。防抖防抖是将多次操作合并为一次来完成操作。其原理就是维护一个定时器,在规定的时间后触发函数;但是在该规定时间内再次触发的话,就会取消之前的定时器,再重新设置,保证了只有最后一次操作能够被触发。具体操作步骤大致为:利用闭包保存一个变量,然后返回一个定时器函数(这个函数就是后续频繁操作触发调用的函数);根据标记条件判断是否第一次需要立即执行(根据使用场景自行设置);当有新的触发操作时,如果存原创 2022-01-21 22:32:36 · 486 阅读 · 0 评论 -
JavaScript实现数组扁平化的五种方法(有效完成数组降维操作)
方法一:flat(参数) 方法 参数:需要降低的维度,设置为 Infinity(无限)可以将任意维度的数组变为一维数组。let arr = [1,2,[3,[4,5,[6,[7]]]]]console.log(arr.flat(Infinity));方法二:reduce 方法 + 递归调用function flatFn(arr){ return arr.reduce((result,item)=>{ return result.concat(Array.isA.原创 2022-01-17 17:13:24 · 502 阅读 · 0 评论 -
简单实现javascript函数防抖
简单实现javascript函数防抖首先我们需要先了解下函数防抖的概念和实现意义什么是防抖?防抖指的是:防止用户在短时间内,大量,高频的重复触发事件,发送大量请求,影响用户体验,给服务器带来负担。怎么才能实现防抖?在用户触发时间过于频繁时,只执行最后一次触发的事件。防抖的运用场景用户注册;提交搜索内容等数据交互场景。让我们来都通过一个小案例来具体了解下吧。需求:点击add按钮,下方显示数字区域从1开始累加。但是一次点击过程只加1。防抖前<body>原创 2021-10-17 22:17:48 · 268 阅读 · 0 评论 -
前端开发中常用的ES6新特性
前端日常开发中常用的ES6特性原创 2022-01-13 14:51:23 · 401 阅读 · 0 评论 -
ES6 async和await
async和await同样是进行异步操作的重要方法,与Promise对象有莫大的关系;async 写在函数前,声明该函数为 async函数;await 后面跟表达式,但一般只使用在 Promise对象;async 和 await 一般是联合使用async 和 await 两种语法结合可以让异步代码像同步代码一样执行async 函数async 函数的返回值是一个 Promise 对象// async函数async function fu(){ return "Hello Wor原创 2021-11-05 20:52:03 · 798 阅读 · 0 评论 -
使用Promise封装ajax请求
使用Promise对象来封装一个ajax请求,有关Promise对象的相关知识我在上一篇博客中已经介绍过了,有需要的小伙伴可以去看看:ES6 Promise对象现在就让我们来具体使用下,首先放上使用的接口地址:http://poetry.apiopen.top/sentences随机获取一句古诗词。<script> // 接口地址:http://poetry.apiopen.top/sentences (随机获取一句诗词) // 新建一个Promise对象 c原创 2021-10-30 14:17:34 · 3362 阅读 · 0 评论 -
ES6 Promise对象
今天来给大家介绍的,是ES6中的新特性,也是前端开发中非常重要的一个特性——异步编程。异步编程想必大家早有耳闻,在js中最简单的异步方法是使用定时器做一个延迟操作。而在ES6中引入了一个新的对象 Promise,它能够用来封装异步操作代码,并根据情况返回异步的状态,也是我们步入 Ajax的一个重要门槛。ES6 Promise对象同步和异步的概念Promise 对象Promise 状态Promise 方法then方法 `Promise.prototype.then`同步和异步的概念在介绍前,我们再来简原创 2021-10-29 16:14:11 · 245 阅读 · 0 评论 -
ES6解析(二)解构赋值
ES6解析(二)解构赋值概念数组的解构赋值对象的解构赋值概念ES6允许按照一定的模式从数组和对象中提取值来赋予定义的变量数组的解构赋值按照变量定义的位置提取数组中对应下标的值。只要等号两边的模式相同,左边的变量就会被赋予对应的值,如果解构不成功变量的值为undefined。简单示例let F4 = ['hello', 'world', 'ES5', 'ES6'];let [h, w, ES1, ES2] = F4;console.log(h); // helloconsole.原创 2021-10-16 13:17:44 · 89 阅读 · 0 评论 -
ES6解析(一)ES6概念和新的声明方式
ES6概念和新的声明方式原创 2021-10-16 10:30:05 · 130 阅读 · 0 评论