〔总结系列〕前端面试题精华筛选

JavaScript篇

如何获取浏览器URL中查询字符串中的参数?

1.封装方法
getUrlArgs(url) {
   const args = url.split('?')
   if (args[0] === url) {
      return false
   }
   const arr = args[1].split('&')
   const obj = {}
   arr.forEach(item => {
      const argArr = item.split('=')
      obj[argArr[0]] = argArr[1]
   })
   return obj
},
2.调用方法
const href = 'http://www.runoob.com/jquery/misc-trim.html?channelid=12333&name=xiaoming&age=23';
const argObj = this.getUrlArgs(href)

跨域的几种方式
1.如何理解浏览器的同源策略

同源策略/SOP(Same origin policy)是一种约定,由Netscape公司1995年引入浏览器,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSRF等攻击。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。

2.那么怎样解决跨域问题的呢?

1、 通过jsonp跨域
2、 document.domain + iframe跨域
3、 location.hash + iframe
4、 window.name + iframe跨域
5、 postMessage跨域
6、 跨域资源共享(CORS)
7、 nginx代理跨域
8、 nodejs中间件代理跨域 // 音乐app教程老师有用到
9、 WebSocket协议跨域
10、后端在头部信息里面设置安全域名 // 公司后端给解决过

持续更新中···

    原文作者:武靖峰
    原文地址: https://segmentfault.com/a/1190000017052088
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞