JavaScript学习笔记·简介篇

  • JavaScript简史

  走在技术革新最前沿的Netscape公司决定着手开发一种客户端语言,用来处理表单验证的问题。

  就职于该公司的Brendan Eich开始着手为计划于1995年2月发布的Netscape Navigator 2开发一种名为Livescript的脚本语言(该语言将同时在浏览器和服务器中使用)为了赶在发布日期前完成开发,Netscape与Sun公司建立了一个开发联盟。在Netscape Navigator 2 正式发布前夕,Netscape为了搭上媒体热炒Java的顺风车临时将LiveScript改名为JavaScript。

*Netscape:网景公司以其生产的浏览器Netscape Navigator而闻名。1998年11月,网景被美国在线(AOL)【美国最大因特网服务提供商之一】收购

  由于JavaScript1.0大获成功的同时,微软决定向与Navigator竞争的自家孩子IE浏览器投入更多资源,在IE3中加入了名为JScript的JavaScript实现(命名为JScript是为了避开与Netscape有关授权问题)。

  微软的举措意味着有了两个不同的JavaScript版本:Netscape Navigator中的JavaScript和IE中的JScript。由于当时还没有标准规定JavaScript的语法和特性,标准化问题被提上了议事日程。

  1997年,以JavaScript1.1为蓝本的建议被提交给了欧洲计算机制造商协会(EMCA)该协会指定39号技术委员会(T39)负责“标准化一种通用、跨平台、供应商中立的脚本语言的语法和语义”。他们经过数月的努力完成了ECMA-262,定义一种名为ECMAScript的新脚本语言的标准。

  第二年,ISO/IEC(国标标准化组织和国际电工委员会)也采用了ECMAScript作为标准(即ISO/IEC-16262)从此以后,浏览器开发商就开始致力于将ECMAScript作为各自JavaScript实现的基础。

【Java是一种完全面向对象的编程语言,想要运用Java写东西就必须先设计对象,而JavaScript不一样,它是基于对象的一种脚本语言,它为开发者自带提供了很多内部对象,要更为简易省时。】

  • JavaScript实现

  JavaScript和ECMAScript通常被人们用来表达相同的含义,但JavaScript的含义比ECMA-262中规定的多很多。

  一个完整的JavaScript实现应该由三个部分组成:

1.核心(ECMAScript)

  ECMA-262规定了这门语言的语法、类型、语句、关键字、保留字、操作符和对象。ECMAScript就是对实现该标准规定的各个方面内容的语言的描述。截止目前【2019/3/15】最新版本是EMACScript9

2.文档对象模型(DOM)

  文档对象模型是针对XML但经过扩展用于HTML的应用程序编程接口(API)DOM把整个页面映射为一个多层节点结构。HTML或XML页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。

如下面这个页面:

<html>
    <head>
        <title>Sample</title>
    </head>
    <body>
        <p>Hello World!</p>
    </body>
</html>

在DOM中,这个页面可以通过下图的分层节点图表示:

3.浏览器对象模型(BOM)

  从根本上讲,BOM只处理浏览器窗口和框架,但人们习惯上把所有针对浏览器的JavaScript扩展算作BOM的一部分。比如:

  • 弹出新浏览器窗口的功能;
  • 移动、缩放和关闭浏览器窗口的功能;
  • 提供浏览器详细信息的navigator对象;
  • 提供浏览器所加载页面的详细信息的location对象;
  • 提供用户显示器分辨率详细信息的screen对象;
  • 对cookies的支持;
  • 像XMLHttpRequest和IE的ActiveObject这样的自定义对象。

  由于没有BOM标准可以遵循,因此每个浏览器都有自己的实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值