博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript 入门简介
阅读量:7121 次
发布时间:2019-06-28

本文共 2537 字,大约阅读时间需要 8 分钟。

hot3.png

一、定义

一个完整的 JavaScript 实现是由以下 3 个不同部分组成的:

核心(ECMAScript) 描述了该语言的语法和基本对象;

文档对象模型(DOM)描述了处理网页内容的方法和接口;

浏览器对象模型(BOM)描述了与浏览器进行交互的方法和接口。

ECMAScript

ECMAScript 并不与任何具体浏览器相绑定,实际上,它也没有提到用于任何用户输入输出的方法。Web 浏览器对于 ECMAScript 来说是一个宿主环境,但它并不是唯一的宿主环境。事实上,还有不计其数的其他各种环境(例如 Nombas 的 ScriptEase,以及 Macromedia 同时用在 Flash 和 Director MX 中的 ActionScript)可以容纳 ECMAScript 实现。

ECMAScript 仅仅是一个描述,定义了脚本语言的所有属性、方法和对象。其他语言可以实现 ECMAScript 来作为功能的基准,JavaScript 就是这样:

ECMAScript、JavaScript、ActionScript、ScriptEase

DOM

DOM(文档对象模型)是 HTML 和 XML 的应用程序接口(API)。DOM 将把整个页面规划成由节点层级构成的文档。HTML 或 XML 页面的每个部分都是一个节点的衍生物。DOM 通过创建树来表示文档,从而使开发者对文档的内容和结构具有空前的控制力。用 DOM API 可以轻松地删除、添加和替换节点。

BOM

IE 3.0 和 Netscape Navigator 3.0 提供了一种特性 – BOM(浏览器对象模型),可以对浏览器窗口进行访问和操作。使用 BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。使 BOM 独树一帜且又常常令人怀疑的地方在于,它只是 JavaScript 的一个部分,没有任何相关的标准。

BOM 主要处理浏览器窗口和框架,不过通常浏览器特定的 JavaScript 扩展都被看做 BOM 的一部分。这些扩展包括:

    弹出新的浏览器窗口

    移动、关闭浏览器窗口以及调整窗口大小

    提供 Web 浏览器详细信息的定位对象

    提供用户屏幕分辨率详细信息的屏幕对象

    对 cookie 的支持

IE 扩展了 BOM,加入了 ActiveXObject 类,可以通过 JavaScript 实例化 ActiveX 对象

由于没有相关的 BOM 标准,每种浏览器都有自己的 BOM 实现。有一些事实上的标准,如具有一个窗口对象和一个导航对象,不过每种浏览器可以为这些对象或其他对象定义自己的属性和方法。

二、知识点

ECMAScript 有 5 种原始类型(primitive type)

Undefined、Null、Boolean、Number 、 String

ECMAScript 的解释程序遇到未声明过的标识符时,用该变量名创建一个全局变量,并将其初始化为指定的值。这是该语言的便利之处,不过如果不能紧密跟踪变量,这样做也很危险。最好的习惯是像使用其他程序设计语言一样,总是声明所有变量。

ECMAScript 关键字

    ECMAScript 关键字的完整列表:

#这些关键字标识了 ECMAScript 语句的开头和/或结尾。根据规定,关键字是保留的,不能用作变量名或函数名break    case    catch    continue    default    delete    do    else    finally    for    function    if    in    instanceof    new    returnswitch    this    throw    try    typeof    var    void    while    with

ECMAScript 保留字

    ECMA-262 第三版中保留字的完整列表如下:

#保留字在某种意思上是为将来的关键字而保留的单词。因此保留字不能被用作变量名或函数名。abstract    boolean    byte    char    class    const    debugger    double    enum    export    extends    finalfloat    goto    implements    import    int    interface    long    native    package    private    protectedpublic    short    static    super    synchronized    throws    transient    volatile

ECMAScript 对象

面向对象术语

    对象:              基于代码的名词(人、地点或事物)的表示。

    类:                 每个对象都由类定义,可以把类看做对象的配方。类不仅要定义对象的接口(interface)(开发者访问的属性和方法),还要定义对象的内部工作(使属性和方法发挥作用的代码)。编译器和解释程序都根据类的说明构建对象。

    实例:              程序使用类创建对象时,生成的对象叫作类的实例(instance)。对类生成的对象的个数的唯一限制来自于运行代码的机器的物理内存。每个实例的行为相同,但实例处理一组独立的数据。由类创建对象实例的过程叫做实例化(instantiation)。

    对象的构成:    在 ECMAScript 中,对象由特性(attribute)构成,特性可以是原始值,也可以是引用值。如果特性存放的是函数,它将被看作对象的方法(method),否则该特性被看作对象的属性(property)。

    对象引用:       在 ECMAScript 中,不能访问对象的物理表示,只能访问对象的引用。每次创建对象,存储在变量中的都是该对象的引用,而不是对象本身。

三. 功能:

   

转载于:https://my.oschina.net/iatbforever/blog/272928

你可能感兴趣的文章
修改Hadoop作业调度算法过程解析
查看>>
字符串循环移位
查看>>
java date相关
查看>>
XCode与Git的完美融合,不再依赖其它Git客户端
查看>>
What's the difference between a stub and mock?
查看>>
Revit中如何自定义快捷键
查看>>
两本有意思的书【代码的未来、淘宝技术这十年】
查看>>
optimization blocks (csapp chapter 5.1)
查看>>
android中自定义checkbox的图片和大小
查看>>
C#在excel中添加超链接
查看>>
poj1562--Oil Deposits
查看>>
[原]Android 初遇Http错误 httpClient.execute
查看>>
BizTalk 新增/修改/删除 XmlDocument 名字空间的高效方法
查看>>
PHP:执行模型和内存模型
查看>>
PhoneJS - HTML5 JavaScript 移动开发框架
查看>>
自旋锁的选择
查看>>
MySQL : ERROR 1042 (HY000): Can't get hostname for your address
查看>>
nyoj------擅长排列的小明
查看>>
三大UML建模工具Visio、Rational Rose、PowerDesign的区别
查看>>
全方位讲解硬件防火墙的选择
查看>>