前端面试经历3-5年

一、金桥信息

0206晚8点 视频面试

自我介绍
技术问题
1、跨域问题的解决方案

会发生跨域的问题,是因为浏览器的安全策略:同源策略,要求同协议、同域名、同端口。发送请求时,只要有个存在不同,且是ajax请求的,直接访问就一定会发生跨域,响应被拦截。解决方案有:
第一、jsonp,利用的是浏览器允许html通过标签从不同域名下加载资源,可通过script标签src属性发起请求,该请求可额外携带一个callback参数,参数值是在发送请求前已定义好的函数,并将其响应结果通过该函数的参数返回给服务器。但具有局限性,只能发送 get 请求。
第二、cors,跨域资源共享,只服务端设置Access-Control-Allow-Origin即可,前端无须设置,若要带cookie请求,前后端都需要设置。
第三、nginx反向代理,利用服务器请求服务器不受浏览器同源策略的限制,通过nginx配置一个代理服务器作为跳板,客户端访问nginx服务器,nginx服务器反向代理真正的服务器,返回响应数据
第四、node中间代理跨域,利用node+webpack+webpack-dev-server代理接口跨域,在其webpack.config.js配置文件进行配置

2、vue组件间传参

父传子: 第一种,父组件调用子组件,v-bind绑定属性或函数,子组件通过props接收;第二种,子组件直接通过this.$parent来获取父组件的属性和方法
子传父: 第一种,父组件调用子组件,v-on监听函数,子组件通过this.$emit(函数名, 参数)触发;第二种,父组件调用子组件,绑定ref,父组件通过this.$refs.名称来获取子组件的属性和方法
非父子: 总线bus(消息公交车),利用发布订阅模式,在main.js文件初始化Vue构造函数的显示原型 prototype的属性$bus为new Vue();后面就是监听this.$bus.on(名称, 回调函数),发布触发this.$bus.emit(名称, 参数),销毁this.$bus.off(名称)

3、es6新增的特性

Promises、数据结构赋值、箭头函数、let/const块级作用域、类的支持、symbols、模块化module、模板字符串、对象属性的简写、async/await

4、promise是什么

承诺将来会执行的
es6新增的一个构造函数,是为了解决异步操作中数据调用嵌套的问题,避免回调地狱
promise本身相当于一个状态机,有三种状态:pending等待、fulfilled成功、rejected失败。
构建Promise对象时,会传入一个执行器函数,resolve和reject两个函数作

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值