或许你已经在很多地方看见过我的名字了,没错我就是号称前端之王的JavaScript,作为一门编程语言的我,已经有数百万的前端程序员使用我来进行前端编程,几乎所以的浏览器当中都能看到我的身影,如果你还没听说过我,那么只能说明你太out了,不过当年的我从来没有想到会有今天的成就。
初出茅庐
我出生在上古时代的浏览器Netscape中,那个时期你在浏览器中看到的东西可以说乏善可陈,这就是世界上第一个网页,建立于1990年,按照现在的眼光来看,它简直可以配得上丑陋这个词儿了。
这还不算什么,那个时候网速只有28.8kbit /s,用Modem(调制解调器)通过电话线拨号上网,有一回也就是我的主人布瑞登艾克,而我的主人正是这家网景公司的一名程序员,打算在用公司里的Netcape去网上征婚,需要注册用户,填写了一大堆注册信息之后提交表单,等了好久,然后服务器告诉他“对不起,您忘记选择性别了”,他几乎崩溃了,这个简单的问题为什么提交之后才告诉我,而不是浏览器在我填写的时候就告诉我呢,于是跑去跟老板说是时候对浏览器改革一下了,老板这时正跟一个叫Sun的家伙合作,Sun这家伙搞出来个Java的语言,听说很火的样子,老板建议我的主人也搞出类似的语言,但是我的主人并没有这样做,而是先给我取了个怪怪的名字LiveScript,后来怕老板起疑心,为了像老板的朋友“示好”,也为了借着Java的名声火一把,于是我就有了一个新名字JavaScript,你有没有被我的名字迷惑住呢,虽然我的主人没用多久就把我发明出来了,JavaScript1.0的时候我还有很多缺陷,但是我还是收获了不少人的青睐。
三元归一
随后的不久,有个叫微软的胖子,凭借着操作系统的巨大优势,开始进军浏览器市场,发布了Internet Explorer3.0并且还搭载了跟我类似的脚本语言,叫Jscript;虽然我有网景作为后盾,但是日子并不好过,这时的世界不仅有了胖子的搅局,还出现了CEnvi的ScriptEase,虽然都有类似的功能,但是却没有统一的语法和特性,这给使用者带来了不少的麻烦,最终,和我主人志同道合的一群人组成了一个TC39委员会,共同制定出了通用的、跨平台、中立于厂商的脚本语言标准,也称做“ECMAScript-262标准”,而且这个标准还被一个大人物(ISO国际标准化组织)采纳通过,虽然这个大人物每年都采纳通过不少的行业标准,但是ECMAScript-262还是成为了各种浏览器生产开发所使用的脚本语言的统一标准,而我的主人看到我后面的路越来越宽,忍不住替我开心。
怀疑人生
由于我的主人忙着他自己的终身大事,匆匆就把我设计出来后,就任由我野蛮成长,此时的我也看见了大千世界,同时还认识了我的同行,说是同行,但是却经常遭到他们的嘲笑和轻视,甚至一度让我怀疑自己是一个怪胎,最瞧不起我的就数Java了,仗着自己年轻有活力,又有Sun这个大树的庇护,每次碰到我就问我到底是不是一门编程语言,还说我为什么总是躲在浏览器里面跑,为什么不弄个单独的程序跑,其实那时的我还不清楚一件事,那就是Java也只能在虚拟机里面跑,如果我要是知道这些,我肯定会反驳Java的。
另外一个我佩服的同行是C,他是个短跑冠军,经常赢得短跑的比赛,一次的聚会上他问我,你怎么不编译运行啊,你看我编译以后,跑的多快,我说,省省吧,要是每个页面打开都要先编译JavaScript,那估计没有人再会使用我来浏览网页了,不仅仅是Java和C ,包括VB,Delphi等当时流行的语言都瞧不起我,背地里叫我屌丝。不过也是,我没法独立运行,也不能像VB,Delphi他们画出漂亮的界面,我能做的就是操作HTML的DOM和浏览器。
其实DOM有点像倒着的一棵树,我的作用就是操作这些数上的元素,DOM树中任意一个节点我都能控制,包括隐藏元素、显示元素、改变颜色、获得文本的值,改变文本的值,添加一个响应点击事件的函数等等,有了这棵树我几乎可以为所欲为了。不管怎么说,我的这些本事让浏览器中的网页变的更加动态了,更加有趣好玩了,但仅限于此,我被困在浏览器和网页上,别的什么也干不了,这也是被Java嘲笑我的原因。
未完待续
网友评论