![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
小小的糖人
这个作者很懒,什么都没留下…
展开
-
页面性能优化,如何减少回流
在开发时,不可避免的会遇到性能优化的问题,怎么做性能才会更好。说到页面性能优化,我们就谈谈两个概念重绘和回流。1、什么是重绘,什么是回流?重绘: 当渲染树中的一些元素需要更新属性,而这些属性只是影响元素的外观、风格,而不会影响布局的操作,比如 background-color、color、visibility等,我们将这样的操作称为重绘。常见的引起重绘 的属性和方法:回流:当渲染树中的一些元素的几何属性发生变化,例如大小、位置等,而这些属性会影响到布局的操作,这样的操作我们称为回流。常见引起回原创 2020-09-12 14:07:54 · 3124 阅读 · 0 评论 -
js事件执行机制
本文的目的就是要保证你彻底弄懂javascript的执行机制,如果读完本文还不懂,可以揍我。不论你是javascript新手还是老鸟,不论是面试求职,还是日常开发工作,我们经常会遇到这样的情况:给定的几行代码,我们需要知道其输出内容和顺序。因为javascript是一门单线程语言,所以我们可以得出结论:javascript是按照语句出现的顺序执行的看到这里读者要打人了:我难道不知道js是一行一行执行的?还用你说?稍安勿躁,正因为js是一行一行执行的,所以我们以为js都是这样的:let a = '原创 2020-09-03 10:52:05 · 1159 阅读 · 1 评论 -
利用JavaScript实现禁用浏览器后退
出现的问题:一个可以选择国家和地区的弹框,弹框占据了一整个页面,当用户不想选择也就是不点击“确认”的时候,想按“返回”就直接返回到前一个页面 了,用户体验感差。出现这样问题的原因:是因为弹框在当前页面,点击“返回”的时候,的确是返回上一页。解决办法:法一:把弹框写为二级页面,但这样改动的地方比较多,比较麻烦。法二:JavaScript监听浏览器的返回事件:弹框显示的时候,禁止浏览器返回事件;弹框关闭时启用浏览器返回。查了很多资料怎么禁用浏览器返回事件。最终在这篇文章中找到了方法。自己采用了终极方案原创 2020-08-18 20:03:08 · 616 阅读 · 0 评论 -
浅析JS模块规范:AMD,CMD,CommonJS
随着JS模块化编程的发展,处理模块之间的依赖关系成为了维护的关键。模块化AMD,CMD,CommonJS是目前最常用的三种模块化书写规范。CommonJSCommonJS规范是诞生比较早的。NodeJS就采用了CommonJS。是这样加载模块:var clock = require('clock');clock.start();这种写法适合服务端,因为在服务器读取模块都是在本地磁盘,加载速度很快。但是如果在客户端,加载模块的时候有可能出现“假死”状况。比如上面的例子中clock转载 2020-07-13 11:24:27 · 151 阅读 · 0 评论 -
try-catch语句
try-catch 语句,作为 JavaScript 中处理异常的一种标准方式。基本的语法如下所示:try{ // 可能会导致错误的代码} catch(error){ // 在错误发生时怎么处理} 12345如果 try 块中的任何代码发生了错误,就会立即退出代码执行过程,然后接着执行 catch 块。此时,catch 块会接收到一个包含错误信息的对象。...转载 2020-07-10 12:04:55 · 171 阅读 · 0 评论 -
如何实现防抖和节流,以及他们的使用场景是什么?
最近看了一篇博客,对于防抖和节流讲得通俗易懂,想把记录下来,分享给大家。文章链接:https://juejin.im/post/5f02710c6fb9a07e7a53ce11#heading-3原创 2020-07-06 10:43:24 · 312 阅读 · 0 评论 -
箭头函数和普通函数的区别
基本用法箭头函数let sum = (a, b) => { return a + b;}复制代码普通函数var sum = function (a, b){ return a + b;}复制代码区别之前看阮一峰前辈 es6 文章里提过这个知识...转载 2020-05-16 21:56:28 · 187 阅读 · 0 评论 -
为什么会产生跨域,以及解决跨域的方法
一、跨域1、为什么会产生跨域答:因为浏览器的同源政策,就会产生跨域。比如说发送的异步请求是不同的两个源,就比如是不同的的两个端口或者不同的两个协议或者不同的域名。由于浏览器为了安全考虑,就会产生一个同源政策,不是同一个地方出来的是不允许进行交互的。2、怎么解决跨域解决跨域的方法:第一种jsonp的方法,但是由于它的安全性太低了,现在很多都不用了。第二种使用CORS解决跨域问题,即跨域资源共享,在后端设置响应头部,加一句代码:access-control-allow-origin:"*"或者允许交互的原创 2020-05-08 23:53:28 · 9276 阅读 · 0 评论 -
什么是闭包,闭包的使用场景、闭包的优缺点,以及解决内存泄露的方法
1、定义:闭包是指有权访问另一个函数作用域中变量的函数。有局部变量才会有闭包。2、闭包的用途:访问函数内部的变量防止函数内部的变量执行完城后,被销毁,使其一直保存在内存中。3、举个闭包的例子function sayHi(name) { return () => { console.log(`Hi! ${name}`) }}const test = sayHi('xiaoming')test() // Hi! xiaoming虽然sayHi函原创 2020-05-08 20:12:41 · 2971 阅读 · 0 评论