最近面试的知识点?

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推崇依赖就近。

猜你喜欢

转载自www.cnblogs.com/yazhng/p/9390285.html