私人博客
许小墨のBlog —— 菜鸡博客直通车
系列文章完整版,配图更多,CSDN博文图片需要手动上传,因此文章配图较少,看不懂的可以去菜鸡博客参考一下配图!
系列文章目录
前端系列文章——传送门
JavaScript系列文章——传送门
前言
又是没有干货的一篇水文!
1.JS的由来
在90年代初,浏览器技术并不发达,浏览器上展示的网页只能以浏览为主,没有用户的交互功能,就像我们现在看到的新闻网页,只能浏览,没有动效,无法通过点击或拖拽实现有趣的效果。网络技术也不发达,数据传送很慢,网速仅有28.8kb/s,不像我们现在的网络,动辄百兆千兆。
基于这样一个背景,用户在进行注册账号的时候,输入的账号等信息,点击提交把数据发送到服务器的时候,传送速度慢,用户需要等待很长时间,才能得到服务器的反馈。例如在表单中输入账号等信息,点击提交后,用户需要耐心等待大概30s的时间,才能知道注册是否成功,关键像两次密码输入不一致、用户名被占用、用户名不合法、密码长度不合法等校验工作,都需要将数据传送给服务器进行验证,每次传送都需要耗费流量,当时的流量费用特别高,给用户操作网页带来了极大的烦恼。
为了解决这个问题,作为当时最受欢迎的浏览器公司网景(Netscape)公司,率先提出了解决方案:将数据校验工作放在浏览器上进行,当浏览器上数据验证通过没有问题之后,再将数据发送给服务器处理,可以减少数据传送次数,节省流量,也节省了传送验证的时间,大大的提高用户体验感。但这需要在浏览器上运行一些脚本才可以实现。
1995年5月,网景公司委派公司程序员布兰登·艾奇(Brendan Eich)开发一些脚本来实现公司的这一创举。在网景公司的设计理念中,这些脚本要使用Java语言来写,因为公司的高管都是Java语言的脑残粉。可是布兰登·艾奇对Java语言完全不感兴趣,所以他用了10个工作日的时间,抱着应付交差的态度匆匆设计出了一门脚本语言:LiveScript。这门语言在后面发布的时候,希望能蹭到Java的热度,将LiveScript改名为JavaScript。简称JS。
JS完美解决了浏览器和服务器交互时间长的问题,也实现了用户和浏览器的交互功能和动态效果,网景公司风头无俩,笑傲江湖。微软看到网景公司的风光,也进军浏览器领域,并借鉴JS开发了属于自己IE浏览器的脚本语言JScript,并捆绑在自己的windows系统产品中,给网景造成了很大的冲击。
于是,网景公司上书IT界的龙头老大欧洲计算机制造商协会(ECMA)公司,要求主持公道,ECMA出面,将JavaScript改名为ECMAScript,简称ES,并制定了浏览器脚本语言的操作标准。不过在IT界,我们把这门语言还称之为JavaScript,只有在版本更新迭代的官方称呼中,叫做ECMAScript。
2.JS的概念
支持面向对象的跨平台脚本语言。
概念理解:
脚本语言:依赖别的语言才能运行
html必须在浏览器中才能运行,js嵌套在html中才能运行
跨平台:可以在不同的平台上运行
windows、linux、安卓。。。
支持面向对象
使用面向对象的思想编程
3.JS和H5的关系
广义的H5,指的是大前端,内容包括HTML+CSS+HTML5+CSS3+JavaScript+前端框架(Vue+React+Angular)+移动端开发(App+小程序)+NodeJS后端技术+跟JavaScript相关的其他技术。。。
狭义的H5,特指HTML的第5个版本,新增了一些语义化标签,新增了一些input的type属性,新增了一些选择器。。。
HTML5的强大之处,不在于新语法,而在于很多HTML5的标签,支持了JS的操作,例如:自定义多媒体布局并控制多媒体播放、canvas标签做画布绘图。。。
4.JS的应用场景
- 表单验证:对用户输入数据进行验证,数据验证通过后,进行提交
- 网页特效:实现用户跟网页的交互,并展示有趣的效果,例如:轮播图、放大镜
- 游戏开发:网页游戏,例如4399小游戏、网页贪吃蛇、。。。
- 物联网:门禁、摄像头监控、自动售货机。。。
5.JS的组成
- ECMAScript:语法标准
- BOM:操作浏览器的标准
- DOM:操作HTML文档的标准
注
本博文缺失大量图片,严重影响内容完整性以及阅读体验,完整内容请前往本人菜鸡博客——许小墨のBlog