HTML:超文本标记语言,决定网页的结构与内容CSS:层叠样式表,设定网页的表现样式Javascript(行为):是一种弱类型脚本语言、其源代码不需经过翻译,而是由浏览器解释运行,用于控制网页行为 构造器(HTML)
HTML是超文本标记语言,不算是真正意义上的编程语言HTML不仅可以通过标记来描述网页内容,同时由于文本中包含了所谓的“超级链接”点,来将网站与网页以及各种网页元素链接起来 表现器(CSS)
CSS层叠样式表是一门标记语言,并不是编程语言,因此不可以自定义变量,不可以引用等(不具备任何语法支持)
因为有以下缺点:
1、语法不够强大、无法嵌套书写,导致模块化开发中需要书写很多重复的选择器
2、没有变量和合理的样式复用机制,使得逻辑上相关的属性值必须以字面量的形式重复输出
导致难以维护。
所以有了CSS预处理器的出现,它是一种专门的编程语言,为CSS增加了一些编程的特性,将CSS作为目标生成文件,然后开发者就只要使用这种语言进行编码工作。通俗说CSS预处理器用一种专门的编程语言,进行Web页面样式设计,然后再编译成正常的CSS文件,以供项目使用。使CSS更加简洁、适应性更强、可读性更佳、更易于代码的维护等。
预处理器(SASS、LESS、Stylus)SASS:基于Ruby,通过服务端处理,功能强大,解析效率高,需要学习Ruby语言,上手难度高
LESS:基于NodeJS,通过客户端处理,使用简单,功能少于SASS,解析效率也低于SASS,但其功能已满足于实际开发(Less 快速入门 | Less.js 中文文档 - Less 中文网)
Stylus:富于表现力、具有健壮性、功能丰富、动态编码;不需要写CSS的冒号、分号、大括号
行为层(Javascript) 解释型语言Javascript是一门解释型语言,所谓解释型值语言是指不需要被编译为机器码在执行,而是直接执行。由于少了编译这一步骤,所以解释型语言开发起来尤为轻松,但是解释型语言运行较慢也是它的劣势。
动态语言Javascript是一门动态语言,所谓的动态语言可以暂时理解为在语言中的一切内容都是不确定的。
类似于 C 和 Java 的语法结构Javascript的语法结构与Java很像,向for、if、while等语句和Java的基本上是一模一样的。
但这也只是相似,Javascript与Java是没有关系(只是当时的网景公司为了蹭Java的热度把Livescript更名为Javascript,就像雷锋与雷锋塔一样没有任何关系)
基于原型的面向对象Javascript是一门基于原型的语言,具有所谓的原型对象的概念。原型对象可以作为一个模板,新对象可以从中获得原始的属性。任何对象都可以指定其自身的属性,即可以是创建时也可以是在运行时创建,而且任何对象都可以作为另一个对象的原型,从而允许后者共享前者的属性。
严格区分大小写Javascript是严格区分大小写的,也就是abc和Abc会被解析器认为是两个不同的东西。
Javascript框架Angular:由Java程序员开发的,其特点是将后端的MVC模式搬到了前台并增加了模块化开发概念,缺点是版本迭代不合理,对前端人员不友好。
React:一款高性能的JS框架;提出了新概念(虚拟DOM)用于减少真是DOM操作,在内存中模拟DOM操作,有效的提升了前端渲染效率;但需要学习一门JSX语言
Vue:一款渐进式Javascript框架,所谓渐进式就是逐步实现新特性的意思,它总和了Angular和React的优点
Axios:前端通信框架;因为vue不具备通信能力因此需要Axios框架与服务器交互
Javascript构建工具Babel:JS编译工具,主要用于浏览器不支持的SE新特性
WebPack:模块打包器



