199 lines
5.3 KiB
Plaintext
199 lines
5.3 KiB
Plaintext
1:call和apply区别
|
||
|
||
调用一个对象的一个方法,用另一个对象替换当前对象
|
||
例如:B.apply(A, arguments); 即A对象应用B对象的方法。
|
||
|
||
而不同之处在于传递的参数,
|
||
|
||
apply最多只能有两个参数——新this对象和一个数组argArray,如果arg不是数组则会报错TypeError;
|
||
|
||
call则可以传递多个参数,第一个参数和apply一样,是用来替换的对象,后边是参数列表。
|
||
|
||
https://www.w3school.com.cn/js/js_function_apply.asp
|
||
|
||
2. 闭包是什么,有什么特性,对页面有什么影响
|
||
|
||
答案:闭包就是能够读取其他函数内部变量的函数,使得函数不被回收,如果过多使用闭包,容易导致内存泄露
|
||
|
||
function a () {
|
||
|
||
var ddd = 1
|
||
function b () {
|
||
ddd+= 1
|
||
log(ddd)
|
||
}
|
||
return b;
|
||
}
|
||
|
||
var c = a();
|
||
c()
|
||
c()
|
||
c()
|
||
|
||
3:深拷贝 浅拷贝
|
||
|
||
只针对对象和数组的
|
||
|
||
|
||
浅拷贝 相互影响
|
||
|
||
Object.assign() 只有源对象,没有目标对象时为浅拷贝
|
||
|
||
深拷贝 相互不影响
|
||
|
||
JSON.parse(JSON.stringify())
|
||
for in 遍历,然后递归赋值
|
||
Object.assign() 只有源对象,没有目标对象时为浅拷贝
|
||
|
||
|
||
4:原型链
|
||
|
||
prototype 被定义为:给其它对象提供共享属性的对象。
|
||
|
||
既然 prototype 只是恰好作为另一个对象的隐式引用的普通对象。那么,它也是对象,也符合一个对象的基本特征。
|
||
|
||
也就是说,prototype 对象也有自己的隐式引用,有自己的 prototype 对象。
|
||
|
||
如此,构成了对象的原型的原型的原型的链条,直到某个对象为 null,整个链条终止。
|
||
|
||
|
||
在js中每个对象都有个 prototype 原型属性,原型属性是为其它对象提供共享属性的对象。而 prototype 本身也是个
|
||
对象,所以也有自己的 prototype 原型,如此构成了对象的原型的原型的原型的链条,直到某个对象为 null,整个链条终止。
|
||
|
||
|
||
|
||
|
||
5:数组去重
|
||
|
||
|
||
|
||
1:定义一个新数组,使用indexOf(或者 includes) 判断是否没有,如果没有就保存到新数组
|
||
|
||
2:使用es6 的set,因为set(或者 Map)是不允许重复的,然后使用 Arrar.from 转换为数组 或者 使用object
|
||
|
||
3:使用 splice ,依次判断前一位和后一位是否相等,然后从后向前删除
|
||
|
||
|
||
如何中断ajax请求
|
||
|
||
原生: ajax.abort()
|
||
Axios: cancelToken
|
||
|
||
|
||
为什么两年就做了三个项目?
|
||
|
||
技术栈里面没有写electron.js!现在你的回答也可以
|
||
|
||
用什么方法做的的深拷贝,有用过第三方深拷贝库吗?
|
||
|
||
json.parse 不能拷贝层级深的和系统对象怎么办?
|
||
|
||
|
||
防抖 和 节流?
|
||
|
||
require 和import 区别?https://www.cnblogs.com/wenxuehai/p/14246989.html
|
||
|
||
在写vue2的时候,兄弟,父子,传参方式
|
||
|
||
|
||
如何动态实现一行平铺多个元素,动态平铺
|
||
网格布局,less直接封装
|
||
|
||
清除浮动 送分
|
||
|
||
伪类和伪元素区别 瞎几把乱答
|
||
|
||
vue写无限层级的父组件,第一层多选,二三层全选,二级全选一级半选三级全选。
|
||
|
||
|
||
reacitve 和 ref 区别
|
||
|
||
unref
|
||
|
||
直接地址栏输入url,不让用户访问无权限页面,404或者无权限提示
|
||
|
||
git 合并代码的时候一般用什么命令
|
||
https://worktile.com/kb/ask/259071.html
|
||
|
||
vue3写了多久?有使用过超过一年吗?
|
||
|
||
pinia和vuex的区别
|
||
|
||
pinia实现原理
|
||
|
||
页面有大量共同参数和方法,例如分页这些,怎么处理,混入。
|
||
|
||
怎么对请求进行promise封装,假设getList怎么封装?
|
||
常用promise方法 resolve(), reject()
|
||
|
||
最新js特性有哪些(用过哪些es6方法)
|
||
|
||
为什么选择uniapp,而不用原生小程序
|
||
|
||
做图表 echart.js
|
||
|
||
简历ts写上,ts覆盖全局类型(axios案例时候覆盖)
|
||
|
||
开发vue2 有没有遇到什么问题?怎么解决
|
||
如何获取异步编程返回值的问题
|
||
从零封装vue项目,你应该怎么做
|
||
spa应用的优缺点
|
||
用vue开发官网会遇到哪些问题?
|
||
详情页 跳转 详情页 没有效果,如何解决?
|
||
给我介绍一下rem
|
||
flex只有七个item,怎么等分?
|
||
简单说下生命周期就行 (说过)
|
||
项目中哪里遇到深拷贝,举下例子(不要说记得不是很清楚,知道就直接说)
|
||
vue开发中权限控制怎么做的,按钮 = 操作
|
||
职业生涯规划
|
||
|
||
对vue的理解,介绍vue的优势
|
||
|
||
spa首屏加载速度慢,怎么解决?
|
||
遇到过,昨晚说过!
|
||
|
||
vue生命周期
|
||
一般还需要介绍 生命周期的具体干了什么
|
||
获取dom 节点在什么生命周期
|
||
|
||
vue实例挂载的过程?
|
||
|
||
vue双向绑定?
|
||
需要回答的是原理
|
||
|
||
组件通讯,加一个 vuex
|
||
|
||
引用类型 function
|
||
|
||
用过promise吗(想问的就是promise的所有概率)?
|
||
必须会!!!
|
||
|
||
深拷贝 和 浅 拷贝 的区别?
|
||
必须会!!!
|
||
|
||
闭包的理解 和 使用场景(缓存数据)
|
||
|
||
dom的常见操作
|
||
|
||
对浏览器 bom的理解
|
||
|
||
对盒子模型的理解
|
||
|
||
对flex 布局的理解
|
||
|
||
uniapp 实现一个双向绑定?不知道面试官在问什么
|
||
|
||
发布小程序,包体积太大(超包)怎么解决?
|
||
分包,必须会
|
||
|
||
对vue的理解,介绍vue的优势
|
||
|
||
注意:说完了,就说没有了,不要说不记得了
|
||
箭头函数 和 普通函数区别
|
||
一次完整的http请求有哪些过程
|
||
数组排序
|
||
js 判断变量类型是否相等
|
||
es6 你用过哪些方法
|
||
css垂直水平居中有哪些方式?
|
||
介绍一下 盒子模型
|
||
uniapp 打包优化措施,vue优化措施,小程序优化措施 |