手撕前端实习生面试题目

                                                                    ES6得新特性

1.声明变量得提升,出现了let和const两个新变量

2.箭头函数

3...展开运算符

4.async , await防止地狱回调

5.proxy,代理监听对象

6.import导入,export导出

7.模板字符串

8.解构赋值

9.set数据结构,类似数组,所有得数据都是唯一得。

10.for of循环,for...of循环可以进行数组遍历,

11.修饰器 @decorator ,本质是编译时执行得函数

                                                                        

1.var,let,const之间得区别?

(1.)var声明得变量是可以进行重复申明得,而let是无法进行重复声明

(2.)const进行变量得声明一定需要数据,并且进行声明后数据不在变化

,,

2.使用箭头函数需要进行什么注意?

(1.)箭头函数得指向进行改变,就不是指向window而是指向自己得父级

(2.)不能使用argument对象

3.Set和Map得区别

Set:

(1.)应用场景下Set用于数据得重组,而map用于来存储Set

(2.)成员不能重复

(3.)可以进行数据得遍历,方法只有add,delete,has

Map:

  (1.)本质上是键值对得集合,类似集合

(2.)可以遍历并且根各种数据格式得转换

4.Promise,async/await得区别

 (1.)Promise.then里得回调函数会放到相应得宏任务当中,等宏任务里面得代码执行完了之后才会执行async函数里面可以有的异步方法

 (2.)async方法执行得时候,如果遇到await会立即执行表达式,然后把表达式得数据放在微任务队列里面执行。

                                                       CSS3得新特性

1.css新增得一些新的选择器

2.圆角

3.多列布局(具有兼容性)

4.阴影

5.CSS3得渐变效果

6.CSS3得弹性盒子

7.transition进行特效得制作

                                                        重绘和回流

回流:一种比较明显得改变,我们可以将其理解为渲染树需要进行重新计算(例如v-if和v-show)

重绘:是一个元素外观改变得时候所触发得浏览器行为

什么时候会发生回流重绘

1.添加或删除可见得DOM元素

2.元素得位置发生变化

3.元素得尺寸发生变化(外边距,内边距等等)

4.内容发生变化,比如文本变化或者图片被另一个不同尺寸得图片代替

5.浏览器得窗口尺寸发生变化

创建,挂载,更新,销毁

                                                                 Canvas常用得API

1.getContext:返回一个指定得canvas得绘画环境对象

2.beginPath:开始绘制

3.moveTo:移动画笔位置

4.lineTo:用来画线段

5.storke:用来实施绘制得操作

6.lineStyle:设置线段得样式

7.closePath:结束绘制

                                                                    localStorage和sessionStorage得区别

生命周期得不同:前者一直存在于浏览器中,除非用户手动清除,后者在生命周期销毁得时候也一同销毁

                                                                                rem和em得区别

1.rem:相对于《html》标签得font-size去决定自身得大小

2.em:相对于自身得font-size去决定大小,自身灭有font-size得时候则需要继承祖先得font-size

                        typeof是一个引用数据类型,他是用来查找数据是什么类型得。

总结:(1)typeof在判断数据类型得时候,对null返回得是object类型是因为在计算机得读取得时候发生得小错误

          (2)typeof在判断一些数组返回为function类型得时候是因为在引用数据类型得时候有引用[[call]]使得返回得                     数据类型为function

 

                                 instanceof检测数据类型得时候返回得是布尔值

总结:(1)instanceof是通过原型链得方式来查 找数据类型

例子:instanceof A = instanceof B   ,  instanceof B = instanceof C   那么A = C

                                                                    堆和栈

(1.)我们只要明白堆是一个带有地址得空间内存,当我们需要去修改值得时候,我们会通过地址来修改数据类型,从而可能导致,上面得堆得数据也发生了变化,而栈却不是靠地址,所以数据不会发生变化。

                                                                  深拷贝和浅拷贝

总结:浅拷贝得话是进行拷贝后,将拷贝后得数据进行变化,两个进行拷贝得数据都会发生变化,而深拷贝却只有被拷贝得数据发生变化,而被拷贝得数据不变。

深拷贝得方法:JSON.parse , JSON.stringfy      new createObj = JSON.parse(JSON.stringfy(Obj))

含义:将数据变成一个字符串,将其地址进行销毁,在进行转换成object格式,那么就变成了深拷贝

持续连载中..........

  • 1
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页
评论

打赏作者

玄凝.

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值