interviews

跨域请求 option

http cookie

js 消抖(debounce)与节流(throttle)

js 精度 9999999999999999 == 10000000000000001 0.1 + 0.2 != 0.3 // true

代码优化,
首屏优化

vue-cli 3.0 build包太大导致首屏过长的

8.降维数组

9. 两个数组 [1,23,3,4] [12,141,]
第二个 插入 一次, 以后每隔3个插入 一个,

将url的查询参数解析成字典对象

3 + 2 +“7”

什么是event-loop

js 事件流

flex 伸缩比例

vue 自定义指令 Object.defineProperty

js 继承

请解释 CSS 动画和 JavaScript 动画的优缺点

讨论与 Promise 相关的问题

2、$route和$router的区别

10 如果你希望 scoped 样式中的一个选择器能够作用得“更深”,例如影响子组件,你可以使用 >>> 操作符:

13、vue中 key 值的作用
答:当 Vue.js 用 v-for 正在更新已渲染过的元素列表时,它默认用“就地复用”策略。如果数据项的顺序被改变,Vue 将不会移动 DOM 元素来匹配数据项的顺序, 而是简单复用此处每个元素,并且确保它在特定索引下显示已被渲染过的每个元素。key的作用主要是为了高效的更新虚拟DOM

8、聊聊你对Vue.js的模板编译的理解
答:简而言之,就是先转化成AST树,再得到的渲染函数返回VNODE(Vue公司的虚拟DOM节点)
详情步骤:

首先,通过编译编译器把模板编译成AST语法树(抽象语法树即源代码的抽象语法结构的树状表现形式),编译是createCompiler的返回值,createCompiler是用以创建编译器的。负责合并选项。

然后,AST会经过生成(将AST语法树转化成渲染功能字符串的过程)得到渲染函数,渲染的返回值是VNode,VNode是Vue的虚拟DOM节点,里面有(标签名,子节点,文本等等)

网络
为 script 标签定义的 async 和 defer 属性有什么用?

6.不可变数据结构(immutable data structures)解决了哪些问题?
immer immutable mobx

不可变结构是否有任何性能影响? JS 生态系统中哪些库提供了不可变的数据结构?这些库的优点和缺点是什么?

提示:线程安全(我们真的需要在浏览器 JavaScript 中担心吗?),无副作用的函数,更好的状态管理等。

6.解释 JavaScript 并发模型

您是否熟悉 Elixir,Clojure,Java 等其他编程语言中使用的任何其他并发模型?

提示:查找事件循环,任务队列,调用栈,堆等。

7 异步请求 超时停止 怎么写

12、自定义指令(v-check、v-focus)的方法有哪些?它有哪些钩子函数?还有哪些钩子函数参数?

答:全局定义指令:在vue对象的directive方法里面有两个参数,一个是指令名称,另外一个是函数。组件内定义指令:directives

钩子函数:bind(绑定事件触发)、inserted(节点插入的时候触发)、update(组件内相关更新)

钩子函数参数:el、binding

Vue.directive(‘demo’, {
bind: function (el, binding, vnode) {
var s = JSON.stringify
el.innerHTML =
‘name: ‘ + s(binding.name) + ‘
‘ +
‘value: ‘ + s(binding.value) + ‘
‘ +
‘expression: ‘ + s(binding.expression) + ‘
‘ +
‘argument: ‘ + s(binding.arg) + ‘
‘ +
‘modifiers: ‘ + s(binding.modifiers) + ‘
‘ +
‘vnode keys: ‘ + Object.keys(vnode).join(‘, ‘)
},
inserted:
})

let func = function() {
return new Promise((resolve, reject) => {
resolve(‘返回值’);
});
};

let cb = function() {
return ‘新的值’;
}

func().then(function () {
return cb();
}).then(resp => {
console.warn(resp);
console.warn(‘1 =========<‘); }); func().then(function () { cb(); }).then(resp => {
console.warn(resp);
console.warn(‘2 =========<‘); }); func().then(cb()).then(resp => {
console.warn(resp);
console.warn(‘3 =========<‘); }); func().then(cb).then(resp => {
console.warn(resp);
console.warn(‘4 =========<‘); }); —————— 五、路由之间跳转 声明式(标签跳转) 编程式( js跳转) —— 七、vue如何实现按需加载配合webpack设置 ——- vuex是什么?怎么使用?哪种功能场景使用它? vue框架中状态管理。在main.js引入store,注入。新建一个目录store,….. export 。场景有:单页应用中,组件之间的状态。音乐播放、登录状态、加入购物车 —— 的作用是什么?

—————–
图片懒加载
____________________

批量异步更新策略及 nextTick 原理?

________________________
vue如何自定义一个过滤器?

—————–
数组去重

—–
对跨域了解吗。jsonp的限制

———–
缓存机制 协商协议

———-
new生成了一个对象的过程
__________
对象深copy

Leave a Reply

Your email address will not be published. Required fields are marked *