认识JavaScript

1.什么是JavaScript?

  JavaScript是属于网络的脚本语言,她被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies以及更多的应用,她更是因特网上最流行的脚本语言。

2.JavaScript为什么会出现?

  在JavaScript问世以前,必须把表单数据发送到服务器端才能确定用户是否没有填写某个必填域,是否输入了无效的值。然而,在那个时候,绝大多数因特网用户都使用速度为28kbit/s的“猫”(调制解调器)上网,为完成简单的表单验证而频繁地与服务器交换数据只会加重用户的负担----想象以下:用户填写一个表单,单击“提交”按钮,然后等待30秒钟,最终服务器返回消息说有一个必填字段没填好......于是,当时走在技术革新最前沿的Netscape公司,决定着手开发一种客户端语言,用来处理这种简单的验证。由此,就职于Netscape公司的Brendan Eich着手开发了JavaScript,于1995年2月正式诞生。

3.JavaScript与Java的关系是如何的?

  JavaScript语言与Java程序语言没有任何关系!JavaScript的开发者Brendan Eich开始希望赶在1995年2月之前发布一种名为LiveScript的脚本语言--该语言将同时在浏览器和服务器中使用(它在服务器上的名字叫做LiveWare),由于时间紧迫,Netscape与Sun公司(开发了Java程序语言的公司)建立了一个开发联盟。在正式发布支持LiveScript脚本语言的Netscape Navigator2前夕,Netscape为了搭上媒体热炒的Java的顺风车,让LiveScript听起来有系出名门的感觉,临时把LiveScript改名为JavaScript。令人遗憾的是,这一选择容易让人们把这两种语言混为一谈。

4.JavaScript的实现。

  JavaScript是由三个部分组成的。

  • ECMAScript
  • DOM
  • BOM
  1. ECMAScript:在JavaScript语言被开发出来之后大获成功,Netscape的竞争对手微软决定与Netscape Navigator竞争的自家产品Internet Explorer3浏览其中加入了名为JScript的JavaScript实现(命名为JScript是因为为了避开与JavaScript有关的授权问题)。随后,两个版本的JavaScript产生了问题,随着业界担心的日益加剧,JavaScript标准化的问题被提上了议事日程。并在1997年将JavaScript1.1为蓝本的建议提交给了欧洲计算机制造商协会(ECMA,European Computer Manufacturers Association),该协会指定了TC39(39号技术委员会)完成了ECMA-262--定义了一种名为ECMAScript的新脚本语言的标准。她与Web浏览器没有依赖关系,并且定义的知识这门语言的基础,包括语法、类型、语句、关键字、保留字、操作符、对象。目前的最新版为ECMA-262第五版。
  2. DOM:即文档对象模型(DOM,Document Object Model)。她是针对XML但经过扩展用于HTML的应用程序编程接口(API)。DOM把整个页面映射为一个多层节点结构。借助于DOM提供的API,开发人员可以轻松自如地删除、添加、替换或修改任何节点。目前最新的为DOM3级。注意:DOM0级标准是不存在的,所谓的DOM0级知识历史坐标中的一个参照点而已。
  3. BOM:即浏览器对象模型(BOM,Browser Object Model)。开发人员可以通过BOM控制浏览器现实的页面以外的部分。  

2017年7月31日补充:Ecma 国际公布了第八版的 ECMAScript 语言规范 ECMAScript 2017(或 ES8)。ECMAScript 是标准化的 JavaScript 语言,1997 年发布了第一版,1998 年和 1999 年发布了第二和第三个版本,之后沉寂 了许多年,直到 Ajax 流行起来后标准工作才再次起步,2009 年发布了第五个版本,自 2015 年起每年发布一个版本。

  https://www.ecma-international.org/publications/standards/Ecma-262.htm

5.后记:

  在这里我粗略地介绍了JavaScript的起源、历史、与java语言的关系以及JavaScript脚本语言的组成部分。不得不说,我对她的了解还差的很远,这篇博文,我始终用“她”来指代JavaScript,这实实在在地是 因 为 爱 啊!!! ok,就此开始的博客之行,希望越来越好。最后我想说的是:

   给我一台电脑,我可以改变整个世界!

JavaScript---认识JavaScipt相关推荐

  1. 小蓝同学的前端之旅--HTML\CSS集成复习

    小蓝同学的前端之旅--HTML\CSS集成复习 前端学习路线 复习模式 api的重要性 HTML基础总结 head标签的常用标签 body标签中常用标签 文本元素标签 表格标签 表格分组 框架 表单 ...

  2. 各浏览器对 onunload 事件的支持与触发条件实现有差异

    标准参考 在 HTML 4.01 规范中关于 onunload 事件的描述是:当 document 从 window 中移除时,触发 onunload 事件. 关于 HTML 4.01 规范中 onu ...

  3. linux如何将ntfs删除文件,【实习记】2014-09-26恢复linux下误删的ntfs盘中的文件

    情景,ubuntu下把NTFS格式的盘中的"实习记"文件夹彻底删除了,追毁莫及,粗心觉不是一件好的事情. linux下回复ntfs盘下的文件不能用ext3grep,而使用debug ...

  4. Flex与JavaScript的交互:调用JavaScipt或者被JavaScript调用

    一.在JavaScript中调用Flex方法 在Flex中可以用ExternalInterface来调用Flex的方法,途径是 1.通过在Flex应用可调用方法列表中添加指定的公用方法.在Flex应用 ...

  5. 傻傻分不清的javascript运行机制

    学习到javascript的运行机制时,有几个概念经常出现在各种文章中且容易混淆.Execution Context(执行环境或执行上下文),Context Stack (执行栈),Variable ...

  6. 提供前进、后退功能及其他JAVASCRIPT速成秘诀

    通过了解下面的一些例子,并运用到你的WEB中,不久你马上成为JAVASCIPT的高手. 例(一).在页面加入当前时间 < script language='JavaScript' > td ...

  7. 《JavaScript面向对象精要》读书笔记

    JavaScript(ES5)的面向对象精要 标签: JavaScript 面向对象 读书笔记 2016年1月16日-17日两天看完了<JavaScript面向对象精要>(参加异步社区的活 ...

  8. 学习JavaScript数据结构与算法(一):栈与队列

    本系列的第一篇文章: 学习JavaScript数据结构与算法(一),栈与队列 第二篇文章:学习JavaScript数据结构与算法(二):链表 第三篇文章:学习JavaScript数据结构与算法(三): ...

  9. 可以左右移动多选下拉列表的javaScipt(可以兼容IE和firefox)

    自己在项目业余时间总结了一份可以左右移动(Add和remove)多选下拉列表的javaScipt,可以兼容IE和firefox,并且经过测试,只是代码略显臃肿,希望各位网友参考后给一些指点,特别是在简 ...

  10. 收藏:JavaScript

    =================================================== Aptana--Javascript开发工具(IDE) Aptana使用入门 Aptana支持J ...

最新文章

  1. WinForm 2.0 textBox作为参数的查询,显示在DataGridView
  2. OpenStack Heat服务介绍 (三)
  3. java用接口实例化对象_[求助]迷茫中,接口可以直接实例化对象吗?
  4. mysql rand() 子查询_MySQL ------ 子查询(十三)
  5. omwin密立根油滴实验数据处理程序_哈工程最新大物实验报告29——磁场的测量...
  6. ffmpeg create a video from 4th image and and slow down the play speed
  7. USACO翻译:USACO 2013 DEC Silver三题
  8. java数据集合总结_java集合总结 - 雷开你的门的个人空间 - OSCHINA - 中文开源技术交流社区...
  9. Mybatis-学习笔记(3)mapper配置文件
  10. 把路由器配置成DHCP服务器,并确保路由功能。
  11. nodejs,webpack安装以及初步运用
  12. 【大数据分析】Spark SQL查询:使用SQL命令
  13. Android图片剪裁库:uCrop
  14. 小米8se怎么解屏幕锁_黔隆科技刷机教程小米5SPLUS忘记密码刷机解锁降级救砖解屏幕锁账户锁教程...
  15. 运用PS制作3G、4G、5G、6G矢量图方法
  16. 枚举——数组中的最长山脉
  17. vim 快速删除一个英文单词
  18. python语言发展历史
  19. 针对win10激活出现的一系列问题解决方法
  20. 0x76731942 (KernelBase.dll) 处最可能的异常: Microsoft C++ 异常:

热门文章

  1. 海思3536:osdrv编译过程中报错及解决方法
  2. 计算机论专业文范文,电脑论文范文例文 关于电脑和栏方面毕业论文范文30000字...
  3. git 裁切_裁切参数设计(DOE试验)
  4. linux下c语言写文件,Linux下C语言之文件操作
  5. java c++的区别_Java语言与C、C++之间的区别?
  6. ironpython 教程_「ironpython」VS2017 IronPython做界面
  7. Java项目:健身器材商城系统(java+Jdbc+Servlet+Ajax+Fileupload+mysql)
  8. 使用HTML CSS完成初步的页面,任务九:使用HTML/CSS实现一个复杂页面(示例代码)
  9. service iptables status无法执行,报错
  10. mac android 真机调试