简单介绍
- 前端是一个需要广度的职位,感觉如果多了解上下游各部门的相关技术会对工作有极大的帮助。单从比起技术来,眼界跟逻辑思维其实更重要。
- 从技术上来说,走出前端那一亩三分地,多接触自己不熟悉的技术。当回头看前端的时候往往会有一种豁然开朗的感觉。
- 现阶段感觉是要接触不同的技术,换种不一样的思维。因为之前也写过 php(用的是国人 tp 框架),初次接触了 mvc 的思想,后来为学校的公众号也写过后台,用的是 python(Django),然后公司现在用的 java 的 spring 那一套(在疯狂补 java 核心卷 I 中…),后端的路已经很成熟的,前端还在探索属于自己的方式。这样看来是豁然开朗了~
- 萌新 -> 页面重构 -> 前端开发工程师 -> 大前端 -> 前端打杂 -> 团队打杂
练级之路
可以写出方便维护的代码
- commonjs/cmd/amd(node/sea.js/require.js)
- es6 module(babel)
- webpack
- mvvm 解决 jq 意大利面条
- 使用 async/await,promise
可以写出不容易出错的代码
- 类型检查,不能相信传进来的参数(当然现在有 ts)
- try-catch 捕获错误
- window.onerror
可以写出性能比较好的代码
- 大量 dom 操作的时候可以批量读,批量写,会用缓存
- 会使用递归分而治之,将大问题分解成相似的小问题
可以灵活使用工具
- charles/whistle 替换本地文件,模拟数据,代理 host
- 会用 ps 切图,markman 测量工具
- 各种带语法提示的小插件
- sourcemap 定位代码
知道怎么定位到问题
- 会有 chrome devtool 里面的 network/performance 等,断点调试
- 网络不通,ping 一下百度
常见问题
跨域
- jsonp(get)
- 服务器代理
安全问题
- xss(不能信任用户的输入,过滤一下输入,转义带有脚本的标签)
- csrf(所有请求都需要带有 token)
性能问题
- 小文件,快展现
- 图片资源无损压缩(webp 了解一下)
- 服务端渲染
- 预加载
- dns 预解析
- web workers 进行大计算
- 知道浏览器的内部工作原理
关注新技术,并能快速化为己用
- webaseembly 将 js 转为二进制的规范
- 小程序
- pwa
有感而发于公司内部分享 ppt