HTML5学习(三)—1

来源:互联网 发布:meego社交软件 编辑:程序博客网 时间:2024/06/05 04:55
第三章    JavaScript
JavaScript有过一段困难的历程—诞生之日起就遭遇困境,紧接着是一段痛快的成长期,而仅仅是最近几年JavaScript才获得了有用的、灵活的编程语言这一美誉。尽管并不完美,但JavaScript可以做很多事情,还是值得关注的。
一、开始使用JavaScript
在一个HTML文档里有很多定义脚本(scripts)的方法。有内联脚本(inline script),这类脚本的内容属于HTML文档的一部分。有外部脚本(external script),这类脚本被包含在一个外部文件中,通过URL来引用这个文件。以上这两种方法需要有script元素才可以使用。
<!DOCTYPE HTML><html><head><title>Example</title></head><body><script type="text/javascript">document.writeln("Hello");</script></body></html>
例子3.1
这个脚本例子很简单,其目的是在文档中添加Hello文字。script元素出现在文档其他内容之后,所以浏览器会在脚本执行之前预先分析其他元素。
二、声明(Statements)
最基本的JavaScript构筑块是声明(Statement)。每个声明代表了一个单独的命令,而声明通常以分号(;)结尾。实际上,分号可以不用的,但使用分号会让代码变得更加清晰可读,并且还得考虑到一行可以有多个声明的情况。
<!DOCTYPE HTML><html><head><title>Example</title></head><body><script type="text/javascript">document.writeln("This is a statement");document.writeln("This is also a statement");</script></body></html>
例子3.2
浏览器会依次执行每一个声明。
三、定义和使用函数(Functions)
如果script元素中直接定义了声明,那么浏览器会在到达那个位置的时候便立即执行。还有另外一种办法,就是将多个声明集中在一起形成一个函数function,这个函数只在浏览器遇到一个调用此函数的声明时才执行。
<!DOCTYPE HTML><html><head><title>Example</title></head><body><script type="text/javascript">function myFunc() {document.writeln("This is a statement");};myFunc();</script></body></html>
例子3.3
函数中的声明语句由两个大括号({和})包围,被称作代码块(code block)。JavaScript对大小写敏感,这就意味着关键词function必须小写。当浏览器执行到调用myFunc函数的另外一个声明语句时,函数中的声明语句才会执行。如:
myFunc();
定义带参数(Parameters)的函数。与大多数的编程语言一样,JavaScript允许定义带参数的函数。
<!DOCTYPE HTML><html><head><title>Example</title></head><body><script type="text/javascript">function myFunc(name, weather) {document.writeln("Hello " + name + ".");document.writeln("It is " + weather + " today");};myFunc("Adam", "sunny");</script></body></html>
例子3.4
例子3.4中的myFunc函数,增加了2个参数:name和weather。JavaScript是一个归类宽松的语言,即:在定义函数的时候不必明确参数的类型。
为了调用一个带参数的函数,当调用该函数的时候,需要赋予实际参数值。如:

myFunc("Adam", "sunny");

当调用一个函数时,实际参数的数量可以不必匹配函数定义中参数的数量。如果调用函数时,实际参数少于定义时的参数,那么没有被赋值的那些参数就相当于没有定义过。如果实际参数多于定义时的参数,那么多余部分将被忽略。照此结果,你不可以定义2个具有相同名称不同参数的函数,而寄希望于JavaScript在调用函数时以实际参数的不同来区分不同函数。如果定义了2个相同名字的函数,那么第2个会取代第1个。

定义带返回值的参数。用return关键字来返回函数执行的结果。

<!DOCTYPE HTML><html><head><title>Example</title></head><body><script type="text/javascript">function myFunc(name) {return ("Hello " + name + ".");};document.writeln(myFunc("Adam"));</script></body></html>
例子3.5

注意,无须额外声明函数将要返回一个结果,也无须指示返回结果的数据类型。

四、变量和类型(Variables and Types)
用var关键字来定义变量。在单个声明语句中,可以随意的给一个变量赋值。一个函数中定义的变量被称为局部变量(local variables),局部变量只能在函数体内有效。直接在script元素里定义的变量被称为全局变量(global variables),全局变量到处有效,包括在其他脚本里。

<!DOCTYPE HTML><html><head><title>Example</title></head><body><script type="text/javascript">var myGlobalVar = "apples";function myFunc(name) {var myLocalVar = "sunny";return ("Hello " + name + ". Today is " + myLocalVar + ".");};document.writeln(myFunc("Adam"));</script><script type="text/javascript">document.writeln("I like " + myGlobalVar);</script></body></html>
例子3.6
JavaScript是一个归类宽松的语言。但这并不意味着JavaScript没有类型,这只说明了你不必显示地声明一个变量的类型,并且可以毫无障碍地给同一个变量赋予不同类型的值。JavaScript根据你赋给变量的值来判定类型,并且可以根据上下文在类型之间自由转换。
原始类型(Primitive Types)。JavaScript定义了一小部分原始类型:string,number和boolean。这看起来是一个短集合,但JavaScript会设法让大部分的变化都适用这3个类型。

0 0
原创粉丝点击