前言
网上其实已经有非常多的js学习资料了,但是每个人都有自己的基础,所以往往是有的人讲的深一点,有的人说的浅一点。
就我自身而言,想要匹配自己水平的找些资料,往往是十分的零碎,所以可能今天看到的文章中有几句是对我有用的,而明天那篇文章中或许又会提出几句相悖的结论。
而我又不是那种可以安心去看js圣经的人,所以就只好做一些相应的记录来方便自己的查阅。因为很多东西也是道听途说,就做不了算数了,仅仅算是写给自己看吧。
js 语言
我记得《圣经·旧约·创世记》有个故事--The Tower of Babel。讲述的人们因为害怕洪水的再次到来,而准备联合起来修建一座直通天际的高塔以传扬聚集四散的人类。可是此事却触怒了上帝权益。于是上帝让人类说各种不同的语言,使人类不能齐心协力一起造塔,造塔计划失败,于是人类也就各散东西。当然巴别塔故事还有很多不同的版本,而且也仅仅是故事而已。哈哈,不过现在也终于有点知道,为啥js有一种ES6转换ES5的工具要叫做Babel了。
一门语言的出现,一般是为了解决一些现有的问题。而一门语言的兴起必然是一个长期的历史沉淀。
那么js为啥会出现呢???貌似一开始就是为了解决网页和浏览器的互动问题吧。而且作为C语言和Self语言一夜情的产物,似乎设计者至今都不怎么喜欢js。记:阮一峰的《Javascript诞生记》
作为最为暴利的软件之一浏览器,利益纷争任谁都想来插上一脚。当年网景(Netscape)与微软之间的浏览器之战,引发了一系列的难以预估的后果,直至今时今日,依然有大量的码农在敲着键盘,码着代码,骂着微软,哈哈哈。
js作为浏览器核心的一部分,对它的支持各个浏览器都有自己特立独行的一套。不得不说这是这场战争之后,最为让人心碎的一件事情,且不说还有对css的支持。幸好,有个和事佬ECMA,把大部分的js标准都给统一了。