前端知识点总结

1.position的值, relative和absolute分别是相对于谁进行定位的?

  • absolute :生成绝对定位的元素, 相对于最近一级的 定位不是 static 的父元素来进行定位。
  • fixed (老IE不支持)生成绝对定位的元素,通常相对于浏览器窗口或 frame 进行定位。
  • relative 生成相对定位的元素,相对于其在普通流中的位置进行定位。
  • static 默认值。没有定位,元素出现在正常的流中
  • sticky 生成粘性定位的元素,容器的位置根据正常文档流计算得出

2.Vue 和 Vuex 区别
Vue 是一个前端框架(与 Angular 和 React 同级别),Vuex 只是 Vue 的一个插件,是一个状态管理工具,存放多个组件共用的数据的存放、更改、处理的一个容器,就是说来存放处理公共数据的工具,存放的数据一变,各个组件都会更新,也就是说存放的数据是响应式的。

3. Vue 和 React 区别

  • 数据是不是可变的:React 整体是函数式的思想,把组件设计成纯组件,状态和逻辑通过参数传入,所以在 React 中,是单向数据流,推崇结合immutable来实现数据不可变。Vue 的思想是响应式的,也就是基于是数据可变的,通过对每一个属性建立Watcher 来监听,当属性变化的时候,响应式的更新对应的虚拟 dom。
  • 通过js来操作一切,还是用各自的处理方式:react的思路是all in js,通过js来生成html,所以设计了jsx,还有通过js来操作css,社区的styled-component、jss等,vue是把html,css,js组合到一起,用各自的处理方式,vue有单文件组件,可以把html、css、js写到一个文件中,html提供了模板引擎来处理。
  • 类式的组件写法,还是声明式的写法:react是类式的写法,api很少,而vue是声明式的写法,通过传入各种options,api和参数都很多。
  • 什么功能内置,什么交给社区去做:react做的事情很少,很多都交给社区去做,vue很多东西都是内置的,写起来确实方便一些。

4. Vue 组件中的 data 为什么必须是一个函数
组件是可以复用的,如果 data 是一个对象,多个实例会共用这一个对象,当修改某个属性的时候,data 会发生变化,data 是一个函数的时候,每一个实例的 data 都是独立的,不会相互影响。

5. typeof返回值
object boolean number undefined function string
6. VUE 生命周期

7. VUE 为什么要有生命周期

8. MVVM 模型
Model-View-ViewModel 的简写,即模型-视图-视图模型。模型指后端传递的数据,视图指看到的页面,视图模型作为 MVVM 的核心,是连接模型和视图的桥梁。视图模型有两个方向:通过数据绑定,将 Model 转化为 View,即将后端传递的数据转换成看到的页面;通过 DOM 事件监听,将看到的页面转换成后端的数据。这两个方向的实现,叫做数据的双向绑定。
VUE 框架基于 MVVM 模型,Model 指 Javascript 中的数据,如对象、数组等,View 指页面视图,ViewModel 指 VUE 实例化对象。
9. MVC 模型
Model-View-Controller 的简写,即模型-视图-控制器模型。Controller 指的是页面业务逻辑。使用 MVC 的目的是将 M 和 V 的代码分离,MVC 是单向通信的,即 View 跟 Model 必须通过 Controller 来承上启下。
10. 为什么说 VUE 是渐进式框架
VUE 的使用可大可小,无论什么样的项目,VUE 都会有相应的方式来整合到项目中,所以它是一个渐进式的框架。

10.JS三种弹出消息方式
11. Object.defineProperty 是 ES5 中一个无法 shim 的特性
Shim 指的是在一个旧的环境中模拟出一个新 API ,而且仅靠旧环境中已有的手段实现,以便所有的浏览器具有相同的行为。Object.defineProperty 这个特性是仅 ES5 支持,无法使用低级浏览器中的方法来实现的,所以 Vue 不支持 IE8 以及更低版本的浏览器。
12. CSS 元素分类
替换元素:用来替换元素内容的部分并非由文档内容直接表示,例如,img, put
非替换元素:元素内容由用户代理(通常是浏览器)在元素本身生成的框中显示,段落、标题、表单元素、列表和 XHTML 中的几乎所有元素都是非替换元素。
块级元素:块级元素生成一个元素框,默认填充其父元素的内容区,旁边不能有其他元素,例如 p, div, 列表项(特例),替换元素可以是块级元素,不过通常都不是。
行内元素:行内元素在一个文本行内生成元素框,而不会打断这行文本,例如 strong, em

HTML、XHTML 和 HTML5 的区别
CSS 和 CSS3 的区别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值