记录一下吧,毕竟面试经验比较少,也是成功斩获了offer。
电面
- 介绍自己
- react 核心思想,react的优点和缺点
- 了解过其他前端框架吗,优势劣势,和react区别
- 使用react-native开发有什么好处
- redux和mobx这两个数据管理工具有什么不同,各有什么优劣?
- 在使用react-native开发的时候踩过什么坑
第一轮手写功能函数
解析一个url特殊封装的query
样例
输入
https://www.google.com?q=test&a[a]=a&a[b]=c
输出
{
"q": "test",
"a":{
"a":"a",
"b":"c"
}
}
将数字转换为固定格式的字符串
输入
12345678.8091
输出
12,345,678.809,1
第二轮
(。。第二轮的面试官竟然是写java的。。。)
写一个简单的ListView组件
http的包是什么样子的
http请求
https://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html
http请求由三部分组成,分别是请求行,信息报头,请求正文。
例子
GET /dumprequest HTTP/1.1
Host: rve.org.uk
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Referer: https://www.google.com/
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
请求行
GET /dumprequest HTTP/1.1
请求方法 请求URL HTTP协议版本
后面接着的就是信息报头即header
最后就是请求的body
http响应
https://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html
HTTP响应也是由三个部分组成,分别是:状态行、信息报头、响应正文
HTTP/1.1 200 OK
Date: Fri, 27 Apr 2018 05:20:58 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
Set-Cookie: aliyungf_tc=AQAAABqIYG7paggAVsE2t8k81yC/SfQ1; Path=/; HttpOnly
Access-Control-Allow-Origin: *
X-Req-ID: 1A94B0F05AE2B33A
X-Req-SSL: proto=TLSv1.2,sni=api.zhihu.com,cipher=ECDHE-RSA-AES256-GCM-SHA384
Server: ZWS
Vary: Accept-Encoding
状态行 由协议 状态码 代码的文本描述
响应报头
最后就是响应的body
http请求的几种类型
这里只列我有了解的
Get、Post、Put、Delete、Options、Head
options
1、获取服务器支持的请求类型
2、检查服务器性能
http响应吗
- 1xx
- 2xx
- 3xx
- 4xx
- 5xx
100 询问是否接受该信息 支持再传输body
101 切换协议,例如websocket,第一个请求询问是否支持,支持则切换
200 成功
204 请求成功,返回的是空数据一般用于更新数据
206 分块传输
301 永久重定向
302 暂时重定向
以上两者对于用户都是重定向,但是对于引擎和网站拥有者的意义不一样。
304 访问的是本地缓存
404 找不到
403 禁止访问
RN上面动画不流畅的时候要怎么解决?
RN上面在ios上webview性能太低要怎么解决?
https://github.com/CRAlpha/react-native-wkwebview 应该是要用这个替换原来react-native的 UIWebView
socket.io 除了websocket通讯还有什么其他通讯手段?
在不支持websocket的时候可以使用轮序
websocket 请求第一步是什么?
发送请求询问是否支持websocket 支持的话切换到这个协议
用html + css 实现一个扇形 讲讲思路?
我想到的思路是分块遮盖一个圆,不过实际上回来看了一下
回来搜了一下 见:https://blog.csdn.net/ganyingxie123456/article/details/77934790