个人面试经验(总结)题:

+++1.问题:vue的双向绑定原理 ?

答:是通过数据劫持结合发布者-订阅者模式的方式来实现的(Object.defineProperty)

get(){

}

se(){

}

2.问题 :keepAlive的作用?

答:(页面缓存 )keepAlive的2个属性include属性,exclude属性

两个钩子函数  :activated(我来了)、deactivated(我走了) 

3.问题:http全称是什么?

答:超文本传输协议

4.问题:简单的说一下pinmse ?

答:为了解决异步地狱回调 以及(接口并发)

5.问题:简单的说一下闭包?(递归是自己调用自己)

答:函数内套函数并可调用内部函数 

6.问题:js继承有哪几种方式?

答:1.原型链继承 2.借用构造函数继承 3.组合继承(组合原型链继承和借用构造函数继承)(常用)4.原型式继承。5.寄生式继承 6.寄生组合式继承(常用)
    寄生:在函数内返回对象然后调用
    组合:1、函数的原型等于另一个实例。2、在函数中用apply或者call引入另一个构造函数,可传参 

7.问题:http和https区别?

答:http是超文本传输协议,信息是明文传输, https则具安全性的ssl/tls加密传输协议。前者默认端口80 后者443 

8.问题:vue父子组件传值有哪些?

答:1.父传子:可冒号 、传值  props {} 接收    2.子传父:子函数调用$emit('setdage', this.name) 父@setdage=‘getdage’ 用定义函数方法接收 

8.(1)、问题:父组件传孙传值?

父 传provide 孙接受 inject

9.问题:简单说一下原型?

答:这是指原型每一个函数都有一个prototype对象属性,指向另一个对象(原型链)。

这是原型链:

1.实例对象与原型之间的连接,叫做原型链。_proto_( 隐式连接 )

2.JS在创建对象的时候,都有一个叫做__proto__的内置属性,用于指向创建它的函数对象的原型对prototype。  

10.问题 :浏览器本地缓存?

答:localStorage(永久缓存(除非自己删除)) 和 sessionStorage(当前会话下有效,关闭页面或浏览器后被清除) 以及 sessionStorageHTML5中提供了globalStorage 以及cookie  

11.问题 :面向对象的理解?

答:1.创建对象

2. 构造函数的方法

3.原型对象

4原型链

5继承 (1.call+遍历)2.寄生组合继续 

12.问题 :es5的理解?

答: 递归  闭包 this指向 基础类型 引用类型 等,,,,很多 

13。问题 :es6理解?

1.新增模板字符串(为JavaScript提供了简单的字符串插值功能)
2.箭头函数
3.for-of (用来遍历数据----例如数组中的值)
4.argument对象可被不定参数和默认参数完美代替
5.ES6将对象纳入规范,提供了原生的Promise对象
6.增加了let和const命令,用来声明变量
7.增加了块级作用域
(let命令实际就增加了块级作用域)
8.还有就是引入module模块的概念  

15、问题:this指向的理解?

答:1.this 指向全局对象 2.this 指向调用对象 3.this一般存在于函数中 4. this指向window 5.谁执行了this所在的函数,this就是谁(重点 )

16、问题:讲讲输入完网址按下回车,到看到网页这个过程中发生了什么

a. 域名解析

b. 发起TCP的3次握手

c. 建立TCP连接后发起http请求

d. 服务器端响应http请求,浏览器得到html代码

e. 浏览器解析html代码,并请求html代码中的资源

f. 浏览器对页面进行渲染呈现给用户

18、问题:数组常用的api方法?

1. length 获取数组的长度
2. join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
3. pop() 删除并返回数组的最后一个元素
4. shift() 删除并返回数组的第一个元素
5. push() 向数组的末尾添加一个或更多元素,并返回新的长度。
6. unshift() 向数组的开头添加一个或更多元素,并返回新的长度。
7. reverse() 颠倒数组中元素的顺序。
8. slice() 从某个已有的数组返回选定的元素
9. splice() 删除元素,并向数组添加新元素。
10. toString()把数组转换为字符串,并返回结果。
11. indexOf返回某个指定的字符串值在字符串中首次出现的位置
12. forEach()遍历数组
13. map()返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
14. some()用于检测数组中的元素是否满足指定条件

19. 问题:vue的理解 ?

vue的数据双向绑定  vue轻量级新型架构框架。 插件化

19(问题:). vue有哪些指令 ?

v-text 、 v-html、v-if、 v-else、 v-else-if、 v-show、v-for、 v-bind、v-model

20.问题:Vue 路由机制的两种实现模式?

1.hash模式

2.第二种是H5的history(路由)模式

21.问题:v-if和v-show的区别?

2.  v-show 有更高的首次渲染开销,而 v-if 的首次渲染开销要小的多;

    3. v-if 有更高的切换开销,v-show 切换开销小;

    4. v-if 有配套的 v-else-if 和 v-else,而 v-show 没有

    5. v-if 可以搭配 template 使用,而 v-show 不行

21.问题:get 和 post的区别?

最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数

22问题:防抖节流的理解?

1.在第一次触发事件时,不立即执行函数,而是给出一个期限值比如200ms(防抖就是指连续触发的事件,在n秒钟之后在执行回调,如果n秒钟之内又触发了事件,那么就是重新计算)(防抖

2.指连续触发事件但是在 设置的秒中只执行一次函数(节流指连续触发的事件,在n秒内必会执行一次)(节流

23.axios和ajax区别?

 

24.问题:箭头函数 和普通函数的区别?

1.箭头函数都是匿名函数 普通函数是具体函数

1.0.箭头函数不能用于构造函数,不能使用new

1.1.普通函数可以用于构造函数,以此创建对象实例

2..箭头函数不具有prototype原型对象

25.问题:var是函数作用域,let是块作用域(let和var的区别)?

0.var 和let的 区别 (作用域不同)

1.在函数中声明了var,整个函数内都是有效的,比如说在for循环内定义的一个var变量,实际上其在for循环以外也是可以访问的

2.而let由于是块作用域,所以如果在块作用域内定义的变量,比如说在for循环内,在其外面是不可被访问的,所以for循环推荐用let

26.问题:快速合成数组的方法?

1.for ——> push

var a=[0,1];
var b=[2,3,4];
 
for(var i=0;i<b.length;i++){
      a.push(b[i]) 
}
 
console.log(a);    //[0,1,2,3,4]

 2.concat

var a = [101,102,103]
var b = ['a','b','c']
var c = a.concat(b)            //concat方法    返回新数组
console.log(c) 

3.apply

var a = [101,102,103]
var b = ['a','b','c']
a.push.apply(a, b)  

4.

var a = [101,102,103]
var b = ['a','b','c']
var c = [...a,...b]            // 扩展运算符的方法    产生一个新数组
console.log(c)  

27.问题:set 和map 的区别?

let a = [1.2.3]

let b = [2.3.4]

let dong = new set(a,b) //去重

let map = new map

map.set('dage', '24') // 赋值 

28.问题:基础类型

基本类型:Underfined ,Null, Boolean,Number,String

引用类型: Object,Array,Date,Function

29.问题:css3的盒子

 content (内容)、padding(内边距) 、margin(外边距,)、border(边框 用户设置的border值) background(背景)

30.问题:var和let和const的区别 ?

1.var声明变量存在变量提升,let和const不存在变量提升

2.let、const都是块级局部变量 (var是函数块作用)

3.同一作用域下let和const不能声明同名变量,而var可以 (

const a =2
const a=1

31.问题:深拷贝和浅拷贝的区别?

 1浅拷贝:.改变不会使原数据一同改变、改变会使原数据一同改变

2.深拷贝:.改变不会使原数据一同改变、改变不会使原数据一同改变

32.问题:vuex的属性?(状态管理器)

有五种,分别是 State、 Getter、Mutation 、Action、 Module

state:基本数据(数据源存放地);
getters:从基本数据派生出来的数据;
mutations:提交更改数据的方法,同步;
actions:像一个装饰器,包裹mutations,使之可以异步;
modules:模块化Vuex。

后续会加。。。。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值