![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
文章平均质量分 52
勤劳的开发员
这个作者很懒,什么都没留下…
展开
-
Javascript本地存储的方式有哪些?区别及应用场景?
作为一段一般不超过 4KB 的小型文本数据,它由一个名称(Name)、一个值(Value)和其它几个用于控制。,类型为「小型文本文件」,指某些网站为了辨别用户身份而储存在用户本地终端上的数据。对于存储较少量的数据很有用,但对于存储更大量的结构化数据来说,这种方法不太有用。并对其加密,其保存的信息很容易被窃取,导致安全风险。使用方法基本一致,唯一不同的是生命周期,一旦页面(会话)关闭,属性都是相同的才可以,其中有一个不同得时候都会创建出一个新的。的数据会自动的传递到服务器,服务器端也可以写。原创 2022-10-21 18:52:02 · 261 阅读 · 1 评论 -
什么是BOM?常见的BOM对象有哪些?
其作用就是跟浏览器做一些交互效果,比如如何进行页面的后退,前进,刷新,浏览器的窗口发生变化,滚动条的滚动,以及获取客户的一些信息如:浏览器品牌版本,屏幕分辨率。传递了第二个参数,且该参数是已有窗口或者框架的名称,那么就会在目标窗口加载第一个参数指定的URL。保存的纯粹是客户端能力信息,也就是浏览器窗口外面的客户端显示器的信息,比如像素宽度和像素高度。当参数为整数数字的时候,正数表示向前跳转指定的页面,负数为向后跳转指定的页面。的历史记录,可以通过参数向前,向后,或者向指定。,也可以打开一个新的浏览器窗口。原创 2022-10-21 18:50:21 · 3124 阅读 · 0 评论 -
什么是事件循环?
从上面我们可以看到,同步任务进入主线程,即主执行栈,异步任务进入任务队列,主线程内的任务执行完毕为空,会去任务队列读取对应的任务,推入主线程执行。出现分歧的原因在于异步任务执行顺序,事件队列其实是一个“先进先出”的数据结构,排在前面的事件会优先被主线程读取。宏任务的时间粒度比较大,执行的时间间隔是不能精确控制的,对一些高实时性的需求就不太符合。同步任务:立即执行的任务,同步任务一般会直接进入到主线程中执行。这时候,事件循环,宏任务,微任务的关系如图所示。异步任务:异步执行的任务,比如。原创 2022-10-21 18:39:45 · 236 阅读 · 0 评论 -
bind、call、apply 区别?如何实现一个bind?
方法中,在定时器中是作为回调函数来执行的,因此回到主栈执行时是在全局执行上下文的环境中执行的,这时候。的指向,后面传入的也是一个参数列表(但是这个参数列表可以分多次传入)作用是改变函数执行时的上下文,简而言之就是改变函数运行时的。的指向,第二个参数是函数接受的参数,以数组的形式传入。指向后原函数会立即执行,且此方法只是临时改变。指向后原函数会立即执行,且此方法只是临时改变。的指向,后面传入的是一个参数列表。接受两个参数,第一个参数是。对象,这时候就需要该改变。同样的,当第一个参数为。方法的第一个参数也是。原创 2022-10-21 16:20:56 · 287 阅读 · 0 评论 -
什么是闭包?闭包使用场景?
缺点是闭包会常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。创建闭包的最常见的方式就是在一个函数内创建另一个函数,通过另一个函数访问这个。使用闭包主要是为了设计私有的方法和变量。闭包的优点是可以避免全局变量的污染,使用闭包可以在 JavaScript 中模拟块级作用域。函数的局部变量,利用闭包可以突破作用链域。函数即闭包,只有函数才会产生作用域的概念。也就是说,闭包让你可以在一个内层函。闭包可以用于在对象中创建私有变量。数中访问到其外层函数的作用域。原创 2022-10-20 11:20:47 · 191 阅读 · 0 评论 -
typeof 与 instanceof 区别
可以准确地判断复杂引用数据类型,但是不能正确判断基础数据类型。可以看到,上述两种方法都有弊端,并不能满足所有场景的需求。的基本用法,下面就实现一个全局通用的数据类型判断方法。操作符返回一个字符串,表示未经计算的操作数的类型。也就是顺着原型链去找,直到找到相同的原型对象,返回。也存在弊端,它虽然可以判断基础数据类型(表示对象或原始值的表达式,其类型将被返回。之后返回的是有问题的结果,不能作为判断。除外),但是引用数据类型中,除了。同时,可以发现引用类型数据,用。类型以外,其他的也无法判断。原创 2022-10-20 11:11:55 · 84 阅读 · 0 评论 -
JavaScript中的数据类型?存储上的差别?
基本数据类型:undefined、null、boolean、number、string、symbol。引用类型的对象赋值,是将保存对象的内存地址赋值给另一个变量。当我们把变量赋值给一个变量时,解析器首先要确认的就是这个值是基本类型值还。引用类型的对象存储于堆中每个堆内存对象都有对应的引用地址指向它,引用地址。除了上述说的三种之外,还包括Date、RegExp、Map、Set等。基本数据类型赋值,是生成相同的值,两个对象对应不同的地址。,在栈中存放的是对应的值。基本数据类型存储在栈中。原创 2022-10-20 11:06:34 · 228 阅读 · 0 评论 -
什么是响应式设计?响应式设计的基本原理是什么?如何做?
CSS3中的增加了更多的媒体查询,就像if条件表达式一样,我们可以设置不同类型的。比如当浏览器的宽度或者高度发生变化时,通过百分比单位,可以使得浏览器中的组件。可以利用前面提到的媒体查询,针对不同设备分辨率改变font-size的值。媒体条件,并根据对应的条件,给相应符合条件的媒体调用相对应的样式表。响应式设计的基本原理是通过媒体查询检测不同的设备屏幕尺寸做处理。使用@Media查询,可以针对不同的媒体类型定义不同的样式。的宽和高随着浏览器的变化而变化,从而实现响应式的效果。原创 2022-10-20 10:30:42 · 268 阅读 · 0 评论 -
怎么理解回流跟重绘?什么场景下会触发?
offsetLeft、scrollTop、getComputedStyle等)也会引起回流。回流:回流这一阶段主要是计算节点的位置和几何信息,那么当页面的布局(如:尺寸、重绘:当计算好盒模型的位置、大小及其他属性后,浏览器根据每个盒子特性进行绘制。重绘:当渲染树中的元素外观(如:颜色)发生改变,不影响布局时,产生重绘。回流:布局引擎会根据各种样式计算每个盒子在页面上的大小与位置。位置、隐藏/状态状态)发生改变时,产生重绘回流。回流计算最新值,触发回流一定会触发重绘。,JS获取Layout属性值(如。原创 2022-10-20 10:29:51 · 131 阅读 · 0 评论