认识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控制浏览器现实的页面以外的部分。  

5.后记:

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

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

JavaScript---认识JavaScipt的更多相关文章

  1. 10、网页制作Dreamweaver(扩展:各浏览器对 onunload 事件的支持与触发条件实现有差异)

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

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

    转载:http://www.w3help.org/zh-cn/causes/BX2047 标准参考 无. 问题描述 一般情况下,onbeforeunload 事件处理函数内会写入一些提示性语句,当用户 ...

  3. 理清JavaScript正则表达式--下篇

    紧接:"理清JavaScript正则表达式--上篇". 正则在String类中的应用 类String支持四种利用正则表达式的方法.分别是search.replace.match和s ...

  4. 推荐13款javascript模板引擎

    javaScript 在生成各种页面内容时如果能结合一些模板技术,可以让逻辑和数据之间更加清晰,本文介绍 X 款 JavaScript 的模板引擎.(排名不分先后顺序) 1. Mustache 基于j ...

  5. javascipt的【函数表达式】

    函数表达式 在编程时,我们可以看到不管是什么类库,jquery也好,zepto也好,都会用到大量的命名函数和匿名函数表达式,本节点就是为了弄懂为何会有这些函数表达式,以及在什么情况下会使用到这些表达式 ...

  6. JavaScript(Node.js)+ Selenium自动化测试

    Selenium is a browser automation library. Most often used for testing web-applications, Selenium may ...

  7. JavaScript基本语法(一)

    前段时间学习了HTML和CSS,也实战了一些结构较简单的项目.在还没运用到JS的知识时,做出来的效果总觉得少了些什么.虽然总体布局与一些基本的特效,也能用HTML+CSS就能完成.但如今开始进入Jav ...

  8. 【阮一峰】深入研究URL编码问题及JavaScript相应的解决方案

    作者: 阮一峰 日期: 2010年2月11日 一.问题的由来 URL就是网址,只要上网,就一定会用到. 一般来说,URL只能使用英文字母.阿拉伯数字和某些标点符号,不能使用其他文字和符号.比如,世界上 ...

  9. javascript判断图片是否加载完成方法整理

    有时候我们在前端开发工作中为了获取图片的信息,需要在图片加载完成后才可以正确的获取到图片的大小尺寸,并且执行相应的回调函数使图片产生某种显示效果.本文主要整理了几种常见的javascipt判断图片加载 ...

  10. JavaScript 一种轻量级的编程语言

     JavaScript 一种轻量级的编程语言 作为一名计算机应用专业的学生,大一上学期开始接触了网页设计和制作,刚开始时感觉做网页很不错,简单地写几行代码就能做出效果来,当时感觉很兴奋,渐渐的喜欢上它 ...

随机推荐

  1. 深入理解计算机系统(2.8)---浮点数的舍入,Java中的舍入例子以及浮点数运算(重要)

    前言 上一章我们简单介绍了IEEE浮点标准,本次我们主要讲解一下浮点运算舍入的问题,以及简单的介绍浮点数的运算. 之前我们已经提到过,有很多小数是二进制浮点数无法准确表示的,因此就难免会遇到舍入的问题 ...

  2. [POJ2404]Jogging Trails(中国旅行商问题)(一般图的匹配——状压DP)

    题目:http://poj.org/problem?id=2404 题意:有个n(n<=15)的点和m条无向边,每条边都有自己的权值.现在你要从某个点出发,每条边可以经过多次但要保证每条边至少走 ...

  3. 关于iphone 6 ios8网站背景图片错乱的问题解决办法

    最近公司有个客户的网站用手机safari打开出现背景图片错乱,本来应该显示A图片的却显示B图片,网速越慢的情况下越容易出现这种问题,悲催的是这种情况只在iPhone 6上出现,并且不是一直这样,多刷新 ...

  4. iOS的TCP/IP协议族剖析&&Socket

    原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0 简介 该篇文章主要回顾--TCP/IP协议族中的TCP/UDP.HTTP:还有S ...

  5. C# Task 用法

    C# Task 的用法 其实Task跟线程池ThreadPool的功能类似,不过写起来更为简单,直观.代码更简洁了,使用Task来进行操作.可以跟线程一样可以轻松的对执行的方法进行控制. 顺便提一下, ...

  6. ubuntu静态IP配置

    1. 修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo gedit /etc/network/interfaces 添加以下内容:auto eth0   ...

  7. openwrt的环境搭建、定制和编译

    参考1:编译openwrt全过程 参考2: ARM9的OpenWRT系统的移植以及 无线视觉操控系统的软件开发 参考3:搭建OpenWrt开发环境(包括编译过程) 参考4:各个openwrt版本的sv ...

  8. mysql 表被锁处理方案

    1. 查询锁表信息 当前运行的所有事务 select * from information_schema.innodb_trx 当前出现的锁 select * from information_sch ...

  9. ActiveMQ_监听器(四)

    一.本文章包含的内容 1.列举了ActiveMQ中监听器的使用 2.spring+activemq方式 1 2 3 <!-- 消息监听容器(Queue),配置连接工厂,监听的队列是queue3, ...

  10. 【URAL 1297】Palindrome 最长回文子串

    模板题,,,模板打错查了1h+QAQ #include<cmath> #include<cstdio> #include<cstring> #include< ...