前言

从这篇起我们来一起学习 JS。

在二十一世纪二十年代的今天,想必不会有人再对 JS 作为一门正儿八经的编程语言的合理地位提出质疑了。而想要获得一门编程语言的比较完备的知识,我们就至少需要从文法(语法词法)、语义、编译时、运行时四个角度去考虑。

由于 JS 在大部分情况下是 解释执行 的,一般不考虑编译时的东西,因此它的基础知识结构就如下图所示:

当然,我们不是语言学家,作为工程技术人员对语义这个东西并不需要过分解释,它就是指一段代码的意思。所以我们学 JS ,说白了就是在学它的文法和运行时

我们之后的内容也会围绕着这两部分展开。但为了真正弄明白 JS 这门语言的设计思路,我觉得还是有必要先从它的历史沿革说起。

1 JS 简史

1.1 仓促诞生

JavaScript 诞生于网景(Netscape)公司。最初 Netscape Navigator 浏览器只能展示静态页面,缺乏动态交互的能力,因此在 1995 年,网景公司决定向浏览器中加入一个 “脚本语言”,他们设想了两条实现路径:

【前端圭臬】七:JavaScript 简史与面向对象之道相关推荐

  1. 【前端圭臬】九:JavaScript 对象剖析

    前言 对象是 JavaScript 中最重要也是最复杂的类型. 在 [JavaScript 简史与面向对象之道] 中,我们探讨了什么是对象和 JS 中对象的设计原则(基于原型),这篇文章我们将从数据结 ...

  2. 【前端圭臬】一:写给入坑前端的你

    专栏目录 导论 [前端圭臬]一:写给入坑前端的你 HTML 篇 [前端圭臬]二:你知道的和不知道的 HTML CSS 篇 [前端圭臬]三:详解 CSS 选择器 [前端圭臬]四:CSS 核心机制--如何 ...

  3. 前端进击的巨人(七):走进面向对象,原型与原型链,继承方式

    "面向对象" 是以 "对象" 为中心的编程思想,它的思维方式是构造. "面向对象" 编程的三大特点:"封装.继承.多态" ...

  4. javascript技术教程蔡敏_程序员都必掌握的前端教程之JavaScript基础教程(上)

    阅读本文约需要10分钟,您可以先关注我们,避免下次无法找到. 本篇文章成哥继续带大家来学习前端教程之JavaScript,网页的动态事件基本上都是靠它来实现的.下面我们就一起来学习内容吧! 01 Ja ...

  5. 零基础web前端学习之JavaScript 和css 阻塞

    web前端学习之JavaScript 和css 阻塞,JavaScript 是客户端和服务器端的脚本语言,可以插入HTML 页函中, 并且是目前较热门的Web 开发语言.同时, JavaScript ...

  6. JavaScript Oriented[探究面向对象的JavaScript高级语言特性]

    JavaScript Oriented 探究面向对象的JavaScript高级语言特性 Prologue . JavaScript Introduce 1.  JS Abstract JavaScri ...

  7. 前端面试之JavaScript

    面试题 1 .解释一下什么是闭包 ? 闭包:就是能够读取外层函数内部变量的函数. 闭包需要满足三个条件: 访问所在作用域: 函数嵌套: 在所在作用域外被调用 . 优点: 可以重复使用变量,并且不会造成 ...

  8. 一个前端对七个后端?别说难,你可能连工作都找不到

    前言 打卡成功,下班辛苦了 不辛苦,命苦 放平心态,慢慢厉害 一个前端对七个都还算好了,群里有的小伙伴还有一个对八个后端.一个对十个的(有两个前端离职了一位),这看似前端人员可以增加的,可相反的是,前 ...

  9. web前端开发七武器

    http://blog.sina.com.cn/s/blog_40e5679c010119pf.html 武器一:前端开发IDE 最佳前端开发IDE:IntelliJ IDEA 推荐指数:   凭什么 ...

最新文章

  1. 如何让图片开口说话 3DMeNow教程
  2. SQL Server将数据导出SQL脚本的方法 转
  3. [洛谷3812]【模板】线性基
  4. centos 编译 mysql_centos 编译安装mysql
  5. java csv 追加_如何在Java中添加一个包含CSV数据的列
  6. 平面向量坐标加法c语言,PTA-C语言 习题9-3 平面向量加法 (15分)
  7. java知识点3(null、引用相关知识(自己理解))
  8. 两种常用的启动和关闭MySQL服务
  9. 二、jdk命令之javah命令(C Header and Stub File Generator)
  10. Prettier 代码格式化工具使用详解
  11. c语言弹窗代码,pc端点击弹窗代码
  12. python爬取豆瓣电影影评_Python3爬虫实战:以爬取豆瓣电影为例
  13. 深入理解Java-GC机制
  14. REST-Assured,接口自动化的 “瑞士军刀“- 断言篇
  15. 【串级PID】浅谈串级PID作用及意义——快速理解串级PID结构优势(附图)
  16. 排序算法为什么要求稳定性
  17. Map.Entry与entrySet与entry,getKey()与entry.getValue()的用法
  18. C Primer Plus 练习 P85
  19. Centos7安装Nethogs网络监控软件
  20. matlab表示dbm,关于信号强度单位db和dBm

热门文章

  1. Android引流技术,利用“雪梨枪4p事件”一天引流4万IP的实战案例!安卓网赚
  2. linux 中wc 用法小结
  3. 国内下载centos的镜像网站大全
  4. 苹果提高iPhone定价失败,全面降价争取销量
  5. 《互联网理财一册通》一一12.2 投资软件与操盘软件
  6. 服务器上出现应用程序错误。此应用程序的当前自定义错误设置禁止远程查看应用程序错误的详细信息(出于安全原因)。未能加载文件或程序集“XXXXXX”或它的某一个依赖项。拒绝访问。
  7. Java中普通字符串转json,老司机帮您java中如何将字符串转成json
  8. 关于前端Vue项目的env文件
  9. iOS集成环信SDK点击聊天图片无效问题
  10. 【破解旋转验证码】百度拖动旋转验证码识别方案