JavaScript的总结(基本概念)

概述

JavaScript是脚本语言,至于为什么有了脚本语言在这里就不讲了,有兴趣的可以看一看:ASP.net的总结(一)。本篇博客废话比较多,希望读者耐着心情看下去,同时也希望你看后有所收获。

什么是脚本?

脚本就是一个可执行的文件,其特点就是,里面的内容是一个未经编译的源程序,因为这个特点,使我们对程序的操作变得非常的灵活,且这种灵活也是我们必须需要的。看到上面的这句话,你是否可以想到之前米老师开会时问道的一个问题:windows操作系统上可以直接运行的文件格式有哪些?答案:*.exe、*.com、*.bat。之所以会想到这个问题,是因为,*.bat批处理文件也是脚本,并且操作系统的内部命令的运行机制和脚本的运行机制有很多类似的,下面会讲内部命令的运行机制,至于什么是内部命令,什么是外部命令,以及字符界面上输入的特殊字符串是什么命令的问题,在这里不再说了,有兴趣知道的可以给我留言。

什么是脚本语言?

脚本语言是一组事前规定好的规则,它的具体体现就是脚本里面的内容。脚本语言的运行机制:因为脚本是解释性的程序,所以,计算机在运行它的时候,需要先通过依据解释这些规则的解释程序解释成机器指令后,才可以被计算机执行,就好像我们计算机命令中的内部命令,需要先通过command.com这么一个程序解释后,才可以被操作系统的内核执行。

什么是嵌套式语言?

脚本里可以使用多种脚本语言,例如,我们的静态的网页文档,其实它就是一个脚本,其里面的脚本语言,可以有VBScript语言,同时里面也可以有javascript语言,当然,HTML语言不是嵌套式语言,因为HTML语言可以编写独立的程序,而嵌套式语言,必须不能编写出独立运行的程序。对于这种一个源程序中有多种语言的同时使用的情况,我们把这些语言称为嵌套式语言,当然这个是根据其特性说的,在这里需要注意的是,多种语言同时存在,这个时候就需要有一个控制程序将其将其进行分割送到相应的解释器中执行了,具体的可以看ASP.net的总结(一)这篇博客关于浏览器内部结构的图。

为什么JavaScript可以实现了跨平台?

JavaScript是一种脚本语言,前面我们也说了关于脚本,脚本语言的一起特点,所以,此时我们提到JavaScript的时候,我们知道,JavaScript的载体(HTML文档)里的内容是源码,它不是基于某个CPU或某个操作系统的指令,而是基于JavaScript解释器的源代码指令,这种解释器是浏览器功能的一部分,只要你的电脑上能安装上浏览器(有javaScript解释器),ok,那么,他就可以运行JavaScript,其运行的过程就是,先通过浏览器的解释程序,解释成该能在该计算机上直接运行的指令后,计算机在执行,这样JavaScript语言就实现了跨平台的功能,这个和我们现在.net,java的跨平台机制差不多,都是在计算机直接运行前,再进行对其的翻译。

为什么说JavaScript是基于对象的编程语言呢?

对于这个问题在网上查了查,但是还是不明白,下面是自己现阶段的猜想,可以说已经变成了一种假设。JavaScript是基于对象的一门语言,我们可以理解为,JavaScript语言可以实现面向对象中提到的一些技术,例如,封装,继承。但是,它和面向对象真正要想完成的事的理念相差还是很远,面向对象的中心思想就是“未雨绸缪”,JavaScript仅仅可以完成其表面的一些功能,实现了代码的重复利用性,只有面向对象的形,另外,JavaScript对于其之前设置好的DOM对象和BOM的对象是无法改变,只能就那么使用。对于这个问题,我认为提非常的好,至于回答,仁者见仁,智者见智,现阶段就这么理解,暂时这么理解。

什么是ECMAScript,DOM和BOM?

整体上我们看JavaScript时,我们可以将其分为3个部分:ECMAScript,DOM和BOM,此时,我们的角色最好是JavaScript整个功能的实现者。JavaScript是一个客户端语言,是一个可以操作浏览器网页上所有内容的语言,好了,问题出来了,JavaScript怎么就能操作网页上的所有内容了呢?想一想我们可以知道,要想操作网页上的某个内容,你必须能够唯一的确定那个内容,唯一的确定那个内容,就需要我们设置一些唯一特定的关键字作为标识,ok,问题又来了,这些唯一的标识都一样吗?在这里需要说的一点是,当时有很多的这类“JavaScript”语言,就好像关系型数据出现的时候,出现的很多“SQL”语句一样,每一种“JavaScript”中的关键字等信息都是不相同的,这个导致的结果是,浏览器生产商要想实现支持这种“JavaScript”,就必须有这个“JavaScript”的解释器,并且规定里面相应的标识符,如果浏览器要支持所有的“JavaScript”,就必须为每一个“JavaScript”制造相应的环境,如果不这样的话,可能会造成,有些文档不能被成功的翻译出原信息,为了解决这个问题,出现了ECMAScript,ECMAScript是一个标准,是JavaScript的语法格式标准,也就是说,ECMAScript中规定了需要哪些关键字等信息,由这些信息,浏览器生产商生产出来的解释器,可以解释所有的“JavaScript”的语句,也就是说ECMAScript使JavaScript的语句解释得到了统一,DOM是文档内容标识的规范,就是唯一的确定文档中那个内容是那个标识的关键字的规范,这样JavaScript语句操作文档得到统一,BOM是浏览器标识的规范。

ECMAScript是JavaScript的书写得到统一;DOM使访问静态文档内容得到统一,DOM也使访问XML文档内容得到了统一(这个不多说了);BOM使访问浏览器内容得到统一。

标签