other
工作流程
- 开会定义需求
- 前端提供接口文档
- 后端确认后 建立分支共同开发联调
- 合并主杆并提交测试人员测试
- 返回议题修改 再次提交测试
- 通过后再次合并最新主杆
- 主杆合并分支
项目打包
6.css不兼容添加前缀
get&post区别
GET 请求可被缓存
GET 请求保留在浏览器历史记录中
GET 请求可被收藏为书签
GET 请求不应在处理敏感数据时使用
GET 请求有长度限制
GET 请求只应当用于取回数据
POST 请求不会被缓存
POST 请求不会保留在浏览器历史记录中
POST 不能被收藏为书签
POST 请求对数据长度没有要求
网站优化
- 精灵图
- 懒加载
- 按需引入
- 减少dom操作
- 减少http请求
- 缓存
h5离线存储 manifest
现在的h5的manifest也可以存一下,优化网站
混合开发hybrid


uniapp等生成app
HTML
BFC

JavaScript
普通函数this指向
```javascript //构造函数 function get(content){ console.log(this); } get(); //window get.call(person);//person对象
//函数作为对象方法被调用(谁调用我,我指向谁) var person ={ name:’张三’, run:function(){ console.log(this.name); } } person.run(); //张三 person.run.call({name:’李四’},30) //李四
<a name="xSlOE"></a>## 箭头函数thsi指向```javascript//箭头函数没有this,不能通过apply等修改this指向//this会指向定义位置//1var name='李四';var all ={name:'张三',run1:function(){console.log(this.name);},run2:()=>{//all对象不能产生作用于this指向windowconsole.log(this.name);}}all.run1(); //张三all.run2(); //李四//2function fn (){console.log(this); //call改变this指向了objreturn ()=>{//没有this 往外找到obj// 如果没有call改变this指向 则会找到windowconsole.log(this);}}const obj ={name:'张三'}const resFn = fn.call(obj)resFn();
事件循环机制
- 记住先微后宏, 即时在指向宏任务,只要有新的微任务加进来 就得先指向微任务, 例如settimeout中的promise
- 因为promise是微任务 所有.then也是微任务
- resolve执行一次就返回结果后 再调用也不会返回结果了
经典题1
经典题2

输出顺序: 3 7 4 1 2 5
- reslove(1) 先添加进微任务队列 reslove2后添加 所有1比2快输出
reslove只能一次 所以reslove(6)会执行但不会输出
隐式类型转化
Vue
data为什么是函数
vue和react的数据流
组件中监听vuex的数据变化
computed和watch之间的区别:

computed能完成的功能,watch都可以完成。
- watch能完成的功能,computed不一定能完成,例如:watch可以进行异步操作。
两个重要的小原则:
- 所被Vue管理的函数,最好写成普通函数,这样this的指向才是vm 或 组件实例对象。
- 所有不被Vue所管理的函数(定时器的回调函数、ajax的回调函数等、Promise的回调函数),最好写成箭头函数,这样this的指向才是vm 或 组件实例对象。
应用场景

nuxt.js项目
服务器渲染框架
vue单页面和多页面
history模式下 404
需要服务器配置路由重写指向index.html




