前端面试(二)

一、HTML5新特性

       语义化标签、.新增的表单元素和表单类型、新增的视频和音频标签(video,audio)、canvas、svg、地理定位、拖放属性、Web Worker、本地存储、WebSocket、Web SQL

https://blog.csdn.net/yunchong_zhao/article/details/102918496

二、localStorage, sessionStorage, cookie

     大小:cookie一般不超过4K,localStorage, sessionStorage为5M或者更大;

     数据有效期: cookie可以设置失效时间,未设置则关闭浏览器失效,设置了则过期才失效;

                           localStorage一直有效,除非手动删除;

                           sessionStorage会话级存储,关闭窗口则删除;

     作用域:     cookie所有同源窗口共享;

                        localStorage所有同源窗口共享;

                        sessionStorage 在同一个浏览器窗口是共享的(不同浏览器、同一个页面也是不共享的)

https://www.cnblogs.com/candy-xia/p/11561542.html

3、HTML5新增的表单属性

     placeholder :表单提示,输入后消失;

     required: 必填校验;

     pattern: 正则表达式;

     min,max: 最大最小值;

     step: 数字间隔;

     autofocus: 自动聚焦;

     multiple: 是否支持多选;

四、CSS3特性

https://www.runoob.com/css3/css3-backgrounds.html

https://www.ibm.com/developerworks/cn/web/1202_zhouxiang_css3/index.html

五、水平居中、垂直居中

https://blog.csdn.net/dengdongxia/article/details/80297116

https://www.cnblogs.com/00feixi/p/10116877.html

https://blog.csdn.net/zhou_shadow/article/details/90764029

六、BFC

https://blog.csdn.net/sinat_36422236/article/details/88763187

七、http请求方式,状态码

https://www.runoob.com/http/http-methods.html

https://www.runoob.com/http/http-status-codes.html

八、数组方法,字符串方法

   数组:push()    把元素添加到数组最后面,返回添加后的数组长度;

              unshif()  把数组添加到数组最前面,返回添加后的数组长度;

              shift()     删除了数组中的第一个元素,返回被删除的元素;

              pop()     删除了数组中的最后一个元素,返回被删除的元素;

              join()     数组转字符串;

              reverse()  数组反转;

              sort()    数组排序;

              concat()  数组连接;

              slice(start, end)  选取数组中的元素;

              splice(index, count, item1, item2) 删除元素,插入元素, 替换元素;

              indexOf,lastIndexOf 查找元素;

      字符串: charAt():     寻找字符串中某位置的字符;

                   charCodeAt():  寻找字符串中某位置的字符;

                   indexOf():    返回搜索的字符串的位置;

                   slice(start, end): 截取字符串;

                   substring(start, end): 截取字符串;

                   substr(start, length): 截取字符串;

                   split(): 字符串转数组;

                   replace(): 代替;

                   toUpperCase(): 转大写;

                   toLowerCase(): 转小写;

九、vue的核心思想

       数据驱动,组件化

十、vue的生命周期

     是指vue实例从开始创建到销毁的全过程,分为八个阶段,beforeCreate.created,beforeMount,mounted,beforeUpdate,updated,beforeDestory,destoryed。这些事件钩子能让我们在控制vue实例的整个过程中形成更好的逻辑。DOM渲染在mounted中就已经形成。

十一、    vue参数传递:

      父传子: 通过props;

      子传父: 通过$emit;

      兄弟之间: eventBus, vuex   

十二、vuex

vuex是vue.js的一种状态管理工具,通俗点就是一个管理共享数据的工具。

state
Vuex 使用单一状态树,即每个应用将仅仅包含一个store 实例,但单一状态树和模块化并不冲突。存放的数据状态,不可以直接修改里面的数据。
mutations
mutations定义的方法动态修改Vuex 的 store 中的状态或数据。
getters
类似vue的计算属性,主要用来过滤一些数据。
action
actions可以理解为通过将mutations里面处里数据的方法变成可异步的处理数据的方法,简单的说就是异步操作数据。view 层通过 store.dispath 来分发 action。

modules
项目特别复杂的时候,可以让每一个模块拥有自己的state、mutation、action、getters,使得结构非常清晰,方便管理。 

十三、keep-alive

keep-alive是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。 

参数:
include - 字符串或正则表达式,只有名称匹配的组件会被缓存
exclude - 字符串或正则表达式,任何名称匹配的组件都不会被缓存

十四、怎么定义 vue-router 的动态路由? 怎么获取传过来的值
在 router 目录下的 index.js 文件中,对 path 属性加上 /:id,使用 router 对象的 params.id 获取。

十五、ES6新特性

let和const,字符串(${}模板占位符,模板字符串, includes, startsWith, endWith),函数增加默认参数,箭头函数,Object.assign(),set和map,迭代器,promise,async

https://www.runoob.com/w3cnote/deconstruction-assignment.html

https://segmentfault.com/a/1190000016068235

你可能感兴趣的:(面试)