最近面试的知识点?

1.vue 如何实现双向绑定? data和computed的区别? 生命周期?

当你把一个普通的 JavaScript 对象传给 Vue 实例的 data 选项,Vue 将遍历此对象所有的属性,并使用 Object.defineProperty 把这些属性全部转为 getter/setter。这些 getter/setter 对用户来说是不可见的,但是在内部它们让 Vue 追踪依赖,在属性被访问和修改时通知变化。每个组件实例都有相应的 watcher 实例对象,它会在组件渲染的过程中把属性记录为依赖,之后当依赖项的 setter 被调用时,会通知 watcher 重新计算,从而致使它关联的组件得以更新!

1.data属性的值,不会随赋值变量的改动而改动。如果要改变这个属性的值,则需要直接给data属性赋值,视图上对这个属性的显示才会变。

2.computed属性,属于持续变化跟踪。在computed属性定义的时候,这个computed属性就与给它赋值的变量绑定了。改变这个赋值变量,computed属性值会随之改变。

生命周期  beforeCreted create  beforeMount  mounted   beforeUpdated  updated  activated  deactivated  beforeDestroy  destroyed  errorCaptured  

2.vue router link后面加参数?

const User = {
  props: ['id'],
  template: '<div>User {{ id }}</div>'
}
const router = new VueRouter({
  routes: [
  { path: '/user/:id', component: User, props: true },

// 对于包含命名视图的路由,你必须分别为每个命名视图添加 `props` 选项
  ]  
})

2..object的方法?

Object.assign()  浅拷贝

object.defineProperty()  直接在一个对象上定义新的属性或修改现有属性,并返回该对象。

object.toString()

object.valueof()

3.cookie和localstroage的区别?

4. http get和post的区别?

5.webpack和gerunt的区别?

1、grunt
gulp是工具链、构建工具,可以配合各种插件做js压缩,css压缩,less编译 替代手工实现自动化工作
(1)构建工具
(2)自动化
(3)提高效率用
2、webpack
webpack是文件打包工具,可以把项目的各种js文、css文件等打包合并成一个或多个文件,主要用于模块化方案,预编译模块的方案
(1)打包工具
(2)模块化识别
(3)编译模块代码方案用

6.兼容

7.同源策略

8.跨越

9.promise

10.es6的知识点

11 seajs和requirejs区别?

1.RequireJS在主文件里是将所有的文件同时加载,然而SeaJS强调一个文件一个模块。
2.AMD推崇依赖前置,CMD推崇依赖就近。

 12 vue-router的原理 是利用h5的history  属性 hash

13 event loop 是事件循环 

js是一个单线程,所有的任务都需要排队,任务分为同步任务和异步任务,同步任务进入主线程 ,做完一件事以后在做下一件事  异步是不进入主线程的,而进入【任务队列】的任务,只有任务队列通知主线程,某个异步任务要执行了,主线程才会执行,主线程从"任务队列"中读取事件,这个过程是循环不断的,所以整个的这种运行机制又称为Event Loop

 

14 .宏任务 微任务

先执行宏任务 在执行微任务

宏任务macrotask:
(事件队列中的每一个事件都是一个macrotask)
优先级:主代码块 > setImmediate > MessageChannel > setTimeout / setInterval
比如:setImmediate指定的回调函数,总是排在setTimeout前面

微任务包括:
优先级:process.nextTick > Promise > MutationObserver

 

转载于:https://www.cnblogs.com/yazhng/p/9390285.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值