目录
1.关于Html
1、html语义化标签的理解、结构化的理解;能否写出简洁的html结构;SEO优化。
语义化标签:HTML 告诉我们一块内容是什么(或其意义),而不是它长的什么样子。
HTML 结构就是钢筋混泥土的墙 , CSS 是装饰材料。
好处:结构清晰,方便理解(搜索引擎)。
SEO优化: 搜索引擎优化 ,mate标签优化,内部 外部链接优化。
2、h5中新增的属性,如自定义属性data、类名className等;新增表单元素;拖拽Drag。
增加了这些新元素:<article>、<address>、<applet>、<bdi>、<canvas>、<command>、<datalist>、<details>、<dialog>、<embed>、<figcaption>、<figure>、<footer>、<header>、<keygen>、<mark>、<meter>、<nav>、<output>、<progress>、<rp>、<rt>、<ruby>、<section>、<source>、<summary>、<time>、<track>、<video>、<wbr>
删除的元素有:<acronym>、<applet>、<basefont>、<big>、<center>、<dir>、<font>、<frame>、<frameset>、<noframes>、<strike>、<tt>。
3、h5中新增的API、修改的API、废弃的API稍作了解(离线存储、audio、video)。
存储:本地存储 localStorage和会话存储sessionStorage
localStorage.setItem("user","admin");
localStorage.getItem("user")
2D绘图(canvas和svg)
更多: https://www.jianshu.com/p/019b55d7cb2e
2.关于CSS
1、CSS选择器(三大特性)。
2、BFC机制。
3、盒模型。
4、CSS模块化开发(封装);SCSS和LESS的使用。
5、屏幕适配以及页面自适应。
6、CSS3中新增的选择器。
7、CSS3中新增的属性,transform、trasition、animation等。
3.关于布局
1、标准文档流(padding + margin + 负margin)+ 浮动float + 定位 left + right + top + bottom。
2、百分比布局:px单位用%num代替,占父级元素的百分比。
3、flex弹性布局:主轴、辅助轴的几个属性。
4、grid栅格布局:使用框架中的类名来替代,本质上还是百分比布局。
4.关于JS基础
1、变量数据类型及检测:基本 + 引用。
2、运算符:算术 + 条件 + 逻辑 + 位 + 短路、隐式转换等。
3、条件、循环、异常处理if、switch(){case xxx:}、try、catch、finally、throw。
4、函数定义、调用方式(apply、call、直接调用);传参:实参给形参赋值。
5、字符串、数组、对象常用API。
6、正则表达式。
5.关于JS高级
1、作用域、作用域链、闭包。
2、原型、原型链、继承。
3、函数上下文、this指向。
4、js的运行机制、事件队列和循环。
5、Ajax原理、axios库。
6、同步、异步编程。
7、jQuery源码学习。
6.关于浏览器
1、浏览器的构成和运行机制。
2、浏览器内核。
3、浏览器交互:BOM和DOM相关webApi、监听事件。
4、浏览器缓存机制。
5、浏览器的渲染原理。
6、浏览器的安全性:跨域和攻击。
7.关于网络协议
1、HTTP协议。
2、cookie、session、token。
8.关于ES6语法
1、字符串、数组、对象扩展的api。
2、变量扩展:let、const解构赋值,块级作用域。
3、函数扩展:箭头函数默认参数、rest参数。
4、展开运算符、模板字符串。
5、set和map数据结构。
6、迭代器和生成器函数next和yield的理解。
7、proxy对象属性代理器:属性的读取(get)和设置(set)相关操作。
8、promise对象、异步编程的解决方案。
9、async + await:异步编程的终极方案promise + generator的语法糖。
10、class语法、构造函数的语法糖。
11、模块化编程export + import的导出和导入。
9.项目能力
1、vue-cli脚手架搭建和功能配置vue.config.js。
2、webpack的常用配置。
3、项目构建打包。
4、熟悉各类框架的文档。
5、UI框架:Bootstrap、MUI、Element-ui等。
6、常用的插件整理;整理一个自己插件库,封装自己的方法库、组件库。
7、常用的工具熟练度。
8、PC端和移动端开发注意事项。
9、经验总结:快速确定项目的技术选型。
10、坑点总结:项目遇到坑坑坑!
11、项目中的性能优化记录(都是细节点,多记录)。
12、需求文档的理解,可以结合项目流程图、UML图。
13、问题解决能力:bug定位调试、查找文档、寻求他人。
14、记录习惯养成。
10.模块化、组件化开发能力
1、项目分类;各类文件整理、分类。
2、各类功能封装。
3、组件和功能模块的抽离、解耦、复用。
11.面向对象的编程思想
1、类的抽象。
2、对象的封装、继承。
3、为了更好的去管理数据、分类数据,实现高内聚、低耦合。
12.设计模式
设计模式感觉也是将面向对象思想再度抽象成现实中某些特定模式。
3.数据结构和算法
1、学习常用的排序搜索算法、顺序表、链表、栈、队列、树、堆等。
2、考验你的抽象思维和数学功底。
3、将现实需求抽象成计算机代码的思维能力。
13.学习能力
1、持续学习的态度——博客、笔记记录。
2、技术论坛活跃度高、问答多。
3、GitHub开源项目参与。
2.了解一门后端语言
1、python、node.js、php等。
2、数据库mysql、redis、mongodb;sql的操作语句、mongodb的操作语句、redis的操作语句。
3、node + express搭建本地服务等。
4、python + django + request + scrapy。
14.系统编程
1、Linux命令行操作、系统文件管理。
2、多任务、多线程、多进程、协程、并发、并行、串行、同步、异步等概念的理解。
算法:
常见js算法: https://www.cnblogs.com/dmcl/archive/2018/06/20/9204168.html
js的简单的逻辑算法题: https://www.cnblogs.com/yzadd/p/6437798.html
微信小程序(基础到高级)js视频资源、算法、插件大全 https://blog.csdn.net/MingL520/article/details/88549999
js https://blog.csdn.net/u011277123/article/details/70208768
var a = 1;
a.a = 2;
console.log(a.a); //undefined
-----------------------------------