JavaScript
简介
JavaScript,是高级(语言)的、解释型、多范式、跨平台的脚本编程语言。它提供语法操作文本、数组、日期及正则表达式等,但不支持I/O等操作。它是一种单线程的语言。JIT(即时编译,对于多次执行的代码,缓存起来,下次可直接执行不再去解释)技术的引入,提升了JavaScript性能。
JavaScript不会经过编译、链接等操作,而是在运行时才动态的进行词法、语法分析,生成抽象语法树(AST)和字节码,然后由解释器负责执行或者使用 JIT 将字节码转化为机器码再执行。整个流程由 JavaScript 引擎负责完成。
布兰登·艾奇(Bremdan Eich),在 1995 年受聘于网景(Netscape)公司。当时网景公司急需一种网页脚本语言,使得浏览器可以与网页互动,Eich 用了 10 天的时间创造了 Javascript。
设计思路是这样的:
(1)借鉴 C 语言的基本语法;
(2)借鉴 Java 语言的数据类型和内存管理;
(3)借鉴 Scheme 语言,将函数提升到"第一等公民"(first class)的地位;
(4)借鉴 Self 语言,使用基于原型(prototype)的继承机制。
构成及特点
一般来说,JavaScript主要包括以下部分:
- ECMAScript,语言的语法和基本对象;
- 文档对象模型(DOM),描述处理网页内容的方法和接口;
- 浏览器对象模型(BOM),描述与浏览器交互的方法和接口。
JavaScript的主要特点有:
- 是解释性、多范式、跨平台的脚本语言;
- 主要用来向HTML添加交互行为;
主要干什么
看完下面这你就知道学了JavaScript,你就可以为所欲为!
传统用法:
- 嵌入动态文本于HTML页面
- 对浏览器事件作出响应
- 读写HTML元素
- 在数据被提交到服务器之前验证数据
- 检测访客的浏览器信息
- 控制cookies,包括创建和修改等
移动端:
- 基于跨平台框架。实现移动端跨平台。PhoneGap、Cordova、Ionic;
- 向移动端嵌入,高变更的网页页面;
全栈:
- Node.js。一个要上天的技术;
- 数据库领域。Mongodb;
- 服务端。Express;
- 桌面应用。NW.js、Electron;
- 游戏。随着WebGL带入浏览器,就扩展了这个新天地;
- VR。借助WebView渲染VR视角;
- AR。读取浏览器数据,再用WebView渲染;
- 硬件。Tessel、JerryScript引擎;
- 操作系统。Firefox OS;
参考资料
- 《前端基础漫游指南》
- javascript Pluralsight 入门、高质量Demo
- 33-js-concepts JavaScript工程师必知33个知识点