网络异常
请检查网络设置后重试
重新加载
web前端快速学习
3
成员
登录后加入频道即可发帖
0/1000
不选择版块
发表
全部
lin
频道主
2024-10-29
#前端
箭头函数与普通函数的区别
1,普通函数可以有匿名函数,也可以有具体名函数,但是箭头函数都是匿名函数。
2,箭头函数不能用于构造函数,不能使用 new 关键字,普通函数可以用于构造函数,以此创建对象实例。
3,箭头函数中 this 的指向不同,在普通函数中,this 总是指向调用它的对象,如果用作构造函数,this 指向创建的对象实例。 箭头函数本身不创建 this,也可以说箭头函数本身没有 this,但是它在声明时可以捕获其所在上下文的 this 供自己使用。
点赞
评论
分享
lin
频道主
2024-10-29
#前端
Promise 的作用是什么
Promise 是异步编程的一种解决方案,比传统的解决方案,如回调函数和事件更合理且更强大。
主要用于解决异步回调地狱的问题,它最早由社区提出并实现,ES6将其写进了语言标准,统一了用法,并原生提供了Promise对象。
点赞
评论
分享
lin
频道主
2024-10-29
#前端
浅拷贝方法
1,直接赋值
2,
Object.assign
方法:可以把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象。当拷贝的 object 只有一层的时候,是深拷贝,但是当拷贝的对象属性值又是一个引用时,换句话说有多层时,就是一个浅拷贝。
3,ES6 扩展运算符,当 object 只有一层的时候,也是深拷贝。有多层时是浅拷贝。
4,
Array.prototype.concat
方法
点赞
评论
分享
lin
频道主
2024-10-29
#前端
作用域与作用域链
作用域是在运行时代码中的某些特定部分中变量,函数和对象的可访问性。换句话说,作用域决定了代码区块中变量和其他资源的可见性。ES6 之前 JavaScript 没有块级作用域,只有全局作用域和函数作用域。ES6 的到来,为我们提供了块级作用域。
作用域链指的是作用域与作用域之间形成的链条。当我们查找一个当前作用域没有定义的变量(自由变量)的时候,就会向上一级作用域寻找,如果上一级也没有,就再一层一层向上寻找,直到找到全局作用域还是没找到,就宣布放弃。这种一层一层的关系,就是作用域链 。
点赞
评论
分享
lin
频道主
2024-10-29
#前端
let/const/var 的区别是什么
var 定义的变量,没有块的概念,可以跨块访问, 不能跨函数访问,有变量提升。
let 定义的变量,只能在块作用域里访问,不能跨块访问,也不能跨函数访问,无变量提升,不可以重复声明。
const 用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改,无变量提升(对象和数组依然修改其中的属性,但不建议这么用),不可以重复声明。
点赞
评论
分享
lin
频道主
2024-10-27
JS引擎如何管理内存
内存的生命周期
1.分配内存,得到使用权
2.存储数据进行反复操作
3.释放内存空间
释放内存
栈内存使用一级缓存,堆内存使用二级缓存
1.局部变量:函数执行完自动释放
2.对象:称为垃圾对象(无变量引用 ) => 垃圾回收机制回收
点赞
1
分享
lin
频道主
2024-10-27
学习什么是this指向
解析器在调用函数每次都会向函数内部传递进一个隐含的参数,这个隐含的参数就是this,this指向的是一个对象。
这个对象我们称为函数执行的 上下文对象,根据函数的调用环境的不同,this会指向不同的对象。
一句话:this指向调用它的对象
1.以函数的形式调用时,this指向window
2.以方法的形式调用时,this就是调用方法的那个对象
3.当以构造函数的形式调用时,this就是新创建的实例对象
点赞
评论
分享
lin
频道主
2024-10-27
如何实现绝对定位模拟固定定位
原理
:绝对定位是相对于最先开启定位的祖先元素定位,若无,则相对于初始包含块定位。
而浏览器默认滚动条并不是在html或body上,而是在初始包含块上,也就是说滚动滚动条移动了初始包含块从而导致了绝对定位元素的移动,所以将滚动条绑定body上就可以滚动滚动条不移动初始包含块,从而绝对定位模拟固定定位。
点赞
1
分享
lin
频道主
2024-10-27
5分钟学会BFC(Block formatting context)
块级格式化上下文,它是一个独立的渲染区域,只有Block-level box参与,它规定了内部的Block-level box如何布局,并且与这个区域外部毫不相干。
BFC布局规则
1.内部的Box会在垂直方向上一个接一个放置
2.Box垂直方向上的距离由margin决定,同属于同一个BFC的两个相邻的Box的margin会发生重叠(兄弟元素margin重叠问题)
3.每个Box的左外边缘(margin-left), 与包含块的左边(contain box left)相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。除非这个元素自己形成了一个新的BFC。
点赞
1
分享
lin
频道主
2024-10-27
!DOCTYPE文档声明的作用
H5不再是SGML的子集,所以H5不需要对DTD进行引用
H5的文档声明,声明当前网页是按照HTML5标准编写的
编写网页时一定要将H5的文档声明写在网页最上边
如果不写文档声明,有些浏览器会进入兼容模式(怪异模式)
标准模式下网页的编排和JS运作模式都是以该浏览器支持的最高标准运行
而在兼容模式下,页面则以宽松向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作
比如:若不声明DOCTYPE类型,IE6浏览器会将盒子模型解释为IE盒子模型,FireFox等会将其解释为W3C盒子模型
点赞
1
分享
公告
暂无公告
直播
暂无直播