Object.defineProperty()
方法允许你在对象上定义一个新属性,或者修改一个已有的属性。这个方法接收三个参数: :要在其上定义属性的对象。 :要定义或修改的属性的名称。 :将被定义或修改的属性描述符。 属性描述符(descriptor)是一个包含以下可选属性的对象: :属性的值,默认为 。 :布尔值,表示该属性是否可写,默认为 。 :布尔值,表示该属性是否可枚举,默认为 。 :布尔值,表示该属性是否可配置,默认为 。
React-Query全面详解
react query是什么 适用于 的,方便我们管理服务端请求的一个库。使用这个库你可以很方便的获取、同步、更新和缓存你的远程数据。 主要功能: 1. 管理请求 可以实现请求、轮询、失败重试、无限加载等功能 可以在网络重连、窗口获得焦点等时机等向服务器发送请求同步状态 2. 状态管理 可以把服务端的状态缓存在客户端的内存中, 从而让任意组件获取这些状态。 安装 基本使用 main.jsx (项目入口文件) app.jsx 开发工具 是...
useState和useRef的区别
的坑: 修改state后,如果直接调用此state,会发现state的值未发生改变。 当调用setState时,react是 异步更新state 的,如果setState后立即获取state的值,此时state尚未更新,因此为旧的状态。 总共有两种用法: 1、获取子组件的实例 2、在函数组件中的一个 全局变量 ,不会因为重复 重复申明, 类似于类组件的 有些情况下,我们需要保证函数组件每次 render 之后,某些变量不会被重复申明,比...
什么是Async await,和Promise有什么区别
Async/await:是一个用同步思维解决异步问题的方案 1. 会自动将常规函数转换成Promise,返回值也是一个Promise对象 2. 只有async函数内部的异步操作执行完,才会执行then方法指定的回调函数 3. 异步函数内部可以使用await 4. await 放置在Promise调用之前,await 强制后面点代码等待,直到Promise对象resolve,得到resolve的值作为await表达式的运算结果 5. aw...
es6箭头函数
1\. 相比普通函数,箭头函数有更加简洁的语法。 普通函数 箭头函数 2\. 箭头函数不绑定this,会捕获其所在上下文的this,作为自己的this。 这句话需要注意的是,箭头函数的外层如果有普通函数,那么箭头函数的this就是这个外层的普通函数的this,箭头函数的外层如果没有普通函数,那么箭头函数的this就是全局变量。 下面这个例子是箭头函数的外层有普通函数。 下面这个例子是箭头函数的外层没有普通函数。 3\. 箭头函数是匿名函...
JS数组中改变原数组和不改变原数组的方法
1、首先我们来聊聊数组中有哪些方法是改变原数组的 1.1、push 是往数组的末尾添加数据,返回值是数组的长度,同时原数组会改变 1.2、pop 是删除数组最后一个元素,这次返回的可是被删除的元素数组,同时原数组改变 1.3、 是向数组开头添加一个或者多个的元素,返回值是数组的长度,同时原数组会改变 1.4、shift 是删除数组的第一个元素 并且返回被删除的元素 同时原数组改变 1.5、splice 向数组中插入、删除或者替换元素 例...
JavaScript的ES6、ES7、ES8、ES9、ES10新特性
ES6新特性(2015) ES6的特性比较多,在这里列举几个常用的: 类 模块化 箭头函数 函数参数默认值 模板字符串 解构赋值 延展操作符 对象属性简写 Promise Let与Const 1.类(class) 2.模块化(Module) ES5不支持原生的模快化,在ES6中模块作为重要的组成部分被添加进来。模块的功能主要有export和import组成。每个模块都有自己的独立的作用域,模块之间的相互调用关系是通过export来规定模...
前端路由hash和history的区别
1\. 前端路由的由来 说前端路由由来之前,先看下后端路由: 后端路由:在前后端不分离的时代,路由都是通过服务端指定的,服务端根据客户端发来的HTTP请求,将返回的数据于模板引擎响应结果结合后进行渲染,将渲染完毕的页面发送给客户端。 优点:SEO友好,爬虫爬取到的页面就是最终的渲染结果。 缺点:每次发起请求都要刷新页面,用户体验不好,服务器压力大。 SPA SPA是单页面应用Single Page web Application的简写。...
JS-数组sort方法用的是哪种排序算法
JS数组的排序方法大家肯定用的太多了,那sort用的是什么排序算法呢?这个问题的答案我寻找了很久,最终在Chrome V8引擎的源码中找到了。 说明一下,ECMAScript没有定义使用哪种排序算法,各个浏览器的实现方式会有不同。==火狐中使用的是归并排序,==下面是Chrome的sort排序算法的实现。 sort方法源码 这一步看出sort方法调用了 InnerArraySort 方法,参数是数组,数组长度,比较函数。再看看 Inne...