前端面试题(十二)

169 阅读2分钟

「这是我参与2022首次更文挑战的第27天,活动详情查看:2022首次更文挑战

拖拽属性

拖拽属性是在面试中经常有可能会问到的问题,那关于拖拽属性,具体会怎么问呢?

1.拖拽属性怎么用?

(1)在需要拖拽的标签内写入:

<p draggable="true"></p>

(2)使用拖拽事件

2.那都有哪些拖拽事件? (1)开始拖拽:

p.ondragstart = function(){}

(2)鼠标松开事件

p.ondragleave = function(){}

(3)进入目标元素

box.ondragenter = funhcion(){}

symbol

1.什么是Symbol?

ES6 新增的数据类型,Symbol的值表示独一无二的值

2.声明Symbol的方法

let a = Symbol()
  1. symbol函数的参数声明
let frist = Symbol('第一个参数')

可以传参,用于描述这个值,传的参数是不可以访问的,一般用于调试代码,提高阅读性。

  1. symbol的作用 防止命名冲突

如果使用别人的对象,不知道别人的属性和方法名,就很容易命名冲突。es6之前的对象属性是字符串,现在属性名可以是字符串和symbol两种类型

洋葱模型

1.什么是洋葱模型?

中间件流程控制方式

2.洋葱模型执行过程:

从最外侧一层层的经过每一层中间件,到最里层,再从最里层,逐层返回

Vue nextTick

1.什么是nextTick?

nextTick就是在下次DOM更新循环结束之后执行延迟回调。可以在修改数据之后使用这个方法,可以获取更新后的DOM,nextTick回调中执行的代码会对DOM进行操作

(1)回调函数延迟在下一次DOM更新后调用

(2)下次DOM更新循环指的是下一次事件循环

2.nextTick的作用?

可以获取更新后的DOM

这次就到这里啦,下次给你们讲讲宏任务微任务,

1.什么是宏任务微任务?

2.解决了什么问题?

3.有哪些是宏任务微任务?