手撕前端实习生面试题目

                                                                    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
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值