本文中记录的是关于JavaScript的最基本的内容,虽然基本,但是我觉得很重要,所以记录下来,供大家参考。

1、脚本语言简介

  • 脚本语言的特点是语法简单,一般以文本形式保存,并且不需要编译成目标程序,在调用的时候直接解释执行,这可以当做脚本语言的判断标准。比如说JavaScript,你只需要用记事本新建一个html,然后在里面加上一段脚本就可以了,用浏览器打开html文件时自然会调用JS脚本。
  • 常见的脚本语言有:JavaScript、Perl、VBScript、Python、Lua。
  • 脚本语言是一种解释型的语言,它不像C/C++等可以编译成二进制代码,能以可执行文件的形式存在,脚本语言不需要编译,可以直接解释执行,由解释器负责解释。

2、JavaScript组成

  • 一个完整的JavaScript实现是由以下3个不同部分组成的:核心(ECMAScript)、文档对象模型(Document Object Model,简称DOM)、浏览器对象模型(Browser Object Model,简称BOM)
  • window是JS中的内置对象,代表整个浏览器窗口,是BOM中的一员
  • documenet是JS中的内置对象,每个载入浏览器的HTML文档都会成为document对象,是DOM中的一员
  • JavaScript是一种弱类型的编程语言,是基于事件驱动的编程语言。每一个JS事件都会对应一个事件句柄,事件句柄的名称是:on+事件名。例如:click是鼠标单击事件,onclick是鼠标单击事件句柄,当click事件触发时,onclick单击事件句柄注册的“JS代码”就会执行

3、HTML嵌入JavaScript脚本

  • 为事件句柄注册“JS”代码
<input type="button" value="点击" onclick="window.alert('Hello World!');"></input>
  • 在< script>标签中写JS代码
< script type="text/javascript">
    alert("Hello World!");
    function sayHello(){
        alert("Hello World!");
    }
    //sayHello()函数不会像alert();那样自己执行,必须手动调用才能执行
    sayHello();
</ script>

alert()直接暴露在< script>标签内部,HTML页面加载时按照自上而下的顺序依次解释执行,因此alert()方法会直接执行。alert()方法具有阻塞作用,当用户点击“确定”之后alert()才算执行完毕,所以本行代码执行完毕之前< body>中的内容是无法加载的。

  • 引用外部js文件
<script type="text/javascript" src="1.js"></script>
<!--下面引入js文件的写法是错误的-->
<script type="text/javascript" src="1.js"/>
<script type="text/javascript">
    alert("Hello World!");
    //调用1.js文件中的sayHello()方法
    sayHello();
</script>

按照自上而下依次解释执行的规则,会先执行外部1.js文件中的js代码,再执行< script>标签内部的js代码;如果把引用外部js文件的代码放在< script>标签之后,那就会先执行< script>标签内部的js代码,再去执行1.js文件中的js代码。
如果< script>标签内部的js函数与外部js文件中的js函数一模一样,那调用时会优先调用< script>标签内部的js函数。