javascript知识总结.docx
《javascript知识总结.docx》由会员分享,可在线阅读,更多相关《javascript知识总结.docx(29页珍藏版)》请在冰豆网上搜索。
javascript知识总结
第一章:
了解javascript
Javascript,其实就是一种WEB脚本的编写语言。
属于“解释型”语言,由WEB浏览器下载到本地电脑的缓冲区,由WEB浏览器翻译并执行代码。
学习过脚本语言的网友应该都清楚,脚本语言是由“宿主程序”解释并执行的代码。
一般的脚本语言并不具有通用性。
大家也可以把javascript理解为一种“基于客户端的脚本语言”。
在这里我还要插一句:
最好能够在学习javascript之前先学习使用HTML。
Javascript最初称为livescript,后来被重命名为“javascript“以表明javascript开始与sun公司的java语言建立了市场关系。
下面将描述javascript能够实现的功能:
1,在浏览器的状态栏或警告框里,想访问者显示消息。
2,验证表单内容并进行计算。
3,响应鼠标与键盘事件,以实现更好的交互效果。
4,检测客户端浏览器特性,并只在支持相应功能的浏览器上执行该功能,以保证浏览器发生错误。
5,在不需要访问者重新加载页面的前提下,更新当前页面元素。
6,可以很好的与远程服务器交互数据,从而实现服务器的作用。
如何在HTML里嵌入javascript?
可以通过 //代表脚本语言的结束。
//javascript代码
Language属性指出编写脚本所使用的语言。
Type属性指出脚本的类型。
还有src属性用于指出脚本文件名(.js)。
这里要指出的是除了事件响应程序以外,任何javascript代码必须要写在之间。
可以在HTML以下的4个部分中使用javascript:
与:
此时,脚本会在浏览器load页面时被执行。
与:
此时,脚本不会被浏览器所执行。
但,可以被其他脚本所引用。
在HTML标签内部的javascript:
称为“事件响应程序“,并允许脚本处理HTML元素。
.js文件:
可以把javascript写在一个独立的javascript文件中,然后在由src属性引用它。
这是标准的写法。
标准的写法是,在HTML外部编写独立的.js文件。
然后在由之间的代码将会被浏览器忽略掉。
通常也没有必要再在这里写任何javascript语句了。
编写独立的javascript文件(.js)有一个显著的优点:
多个文档可以同时使用一个.js文件,由于浏览器会在缓存中保存脚本文件,所以这样可以很有效的缩短显示网页的时间。
Javascript的事件响应机制:
由于javascript可以很好的实现交互式的页面,所以“事件响应“机制是必不可少的。
可以通过以下语法实现事件响应的定义:
可以在HTML标签内部指定将要响应的事件名,与””括住的响应方法。
来实现。
我们可以把事件的响应代码放在独立的javascript文件中。
这样可以把一个.js文件应用到多个标签上。
不但可以节省代码,当要修改响应代码的时候也非常的便利。
就象是C中的宏定义一样。
WEB浏览器与javascript:
Javascript在不同浏览器上的执行结果是完全不同的。
这使得很难编写出能够运行在所有WEB浏览器上的代码。
在某些不兼容的浏览器上完全有可能导致javascript不被执行,甚至是浏览器出现错误。
什么是DOM?
DOM就是DocumentObjectModel的缩写。
翻译成中文就是”文档对象模型”。
是指用来呈现WEB文档的一组标准化对象的运用。
使用javascript通过DOM可以完全的控制整个页面。
如何指定javascript的版本?
有2种方法可以指定javascript的版本:
可以在language属性中指定,如:
也可以在type属性中来指定。
这里有一点要强调的是,如果指定了javascript的版本,那只有在浏览器支持相应版本或更高版本的javascript时,脚本才会被执行。
否则,将不会被执行。
如果没有在之间。
如果浏览器在之间发现了无效的javascript语句的话,将会显示javascript错误信息。
在javascript中变量被理解为一个容器,用于存储数据。
在javascript中变量是无类型的。
Javascript中标识符是区分大小写的,这一点要予以注意。
在javascript中语句结束标记(;)不是必须写的,但是笔者建议大家写,因为这样可以提供可读性。
无论是什么规则尽量不要用缺省的写法。
在javascript中创建输出:
Javascript内置了一些显示信息的方法,最简单也是最常用的方法是:
document.write()该方法的输出将被作为WEB页面的一部分来显示。
可以在javascript中以字符串的形式插入HTML标签,一般用于格式化输出。
执行javascript脚本:
Javascript代码编辑完之后可以在WEB浏览器中加载该脚本以运行它,我们可以看到它的执行结果。
具体加载脚本的步骤是:
文件->打开->选择文件名->打开该文件
当然最简单的办法就是,直接运行.html\.htm\.js等文件,因为该类文件的默认打开程序是WEB浏览器。
这里有一点要予以注意,IE6.0的默认安全设置允许执行远程的脚本,但不允许执行本地脚本。
如何处理javascript中存在的Bug:
Javascript中的错误通常都是由输入错误所引起的。
一般的语法错误WEB浏览器可以显示错误信息以便于程序员诊断。
在Firefox中我们可以通过“错误控制台”来测试脚本。
通过错误控制台可以执行一条javascript语句,并且可以定位错误行。
遗憾的是并不是所有的错误都可以被浏览器识别出来。
第三章:
开始javascript编程
Javascript中的语句:
语句是javascript脚本的基本组成单元,其实,一条语句就是执行某一特定功能的代码而已,通常由分号(;)结尾。
每一条语句可以在javascript控制台中单独被执行。
在javascript中语句并不一定非要以分号结尾的,在语句独占一行的时候可以不写分号的,但是笔者建议大家一定要写分号,这样可以提高代码的可读性。
当然这也是标准的写法。
利用函数(function)来完成任务:
在javascript中使用函数的优点有2处:
可以很好的把脚本的各个逻辑块分离,从而让脚本更便于人们理解。
结构化增强,便于维护。
可以避免使用重复的语句,从而降低最终脚本的体积。
函数的通用性使得利用固有的算法处理不同的数据(data)。
Javascript包含许多内置函数,从而javascript可以完成更为强大的功能,使得开发更加的简单、高效。
Javascript中的变量:
在javascript中可以通过关键字var声明变量,例如:
varvalue=99;
以上语句声明了一个变量value并且向其内部赋入99。
在javascript中变量可以隐含被声明,也就是不必指定关键字var。
javascript中变量是无类型的,准确的说是在声明的时候不用给变量指定数据类型。
理解javascript中的对象(object):
Javascript支持对象,所以我们可以把它理解为“面向对象”。
但是它并不是真正的支持面向对象,但是javascript正在向着这方面发展。
相信在不久的将来javascript可以实现真正的面向对象机制。
由于“面向对象”与“面向过程”是2种完全不同的“程序设计思想”,所以有一些关于面向对象的概念需要我们重新来认识:
对象中储存的数据称为对象的属性(描述对象的静态特征)。
基于对象的方法(对数据的操作)被称为行为(对象所具有的行为,属于对象的动态特征)。
在javascript中也和其他面向对象的语言相同,是使用.来引用对象的成员,比如:
Object.Display();
Javascript支持3种类型的对象:
Javascript的内置对象:
DateStringArrayMath等。
文档对象模型(documentobjectmodel):
该对象表示了浏览器的组建与当前HTML文档。
自定义对象:
由程序员自己创建的对象。
Javascript中的“分支语句”:
根据Boolean值来判断该执行哪条语句(分支体)。
从而做出更加恰当的选择,也可以根据用户的输入来执行特定的程序路线。
Javascript中的“循环语句”:
根据Boolean值来判断是否继续执行同一个语句或同一个块(循环体)。
这一章不会深入讲到循环,所以这只记载关于循环的简单介绍。
Javascript中的“事件响应程序”:
Javascript中的事件处理程序实际上就是处理页面事件的脚本而已。
一个事件实际上就是发生在浏览器中的一个动作,可以用以下关系来描述:
动作->触发->事件
一个事件实际上表明了发生在某一特定对象上的动作,脚本可以通过预先设定的响应代码来响应该事件。
有些“事件”是预期的,或者说是:
我们希望它(事件)发生的。
而有些事件则是在我们预期只外的,我们不希望它发生的。
Javascript中的事件响应程序,告诉浏览器在一个特定的事件发生时,它(浏览器)该如何做。
脚本(script)是按照用户的动作来响应的,并非顺序执行。
有些事件是由用户所触发的,而有些则是由浏览器所触发的,比如下载页面完毕等。
每个事件处理程序与一个浏览器对象相关联,也就是说:
它(事件)只为该对象服务。
每一个浏览器对象所能够监听到的事件都不同,我们可以在对象标签内指定事件响应程序。
WEB浏览器执行脚本的顺序:
在一个WEB文档里,可能包含了多个脚本。
也就是多组标签,但是浏览器先执行哪个脚本后执行哪个脚本呢?
这由一个“逻辑形式”所决定:
先执行
标签内部的script,因为标签内的脚本不能够理解被执行而只是被预先定义,一被后面的脚本所引用。
所以在这里定义函数是非常合适的。
执行完
之后,浏览器开始执行标签,该标签内的脚本将会被立即执行。
如果在
有多个脚本则按照先后次序依次被执行。
此时浏览器将会进入等待状态,等待事件的发生。
当特定事件发生时,浏览器会去执行预先定义的事件处理程序(通常被定义在
标签内。
Javascript语法规则:
Javascript的语法规则,就是定义如何来使用该语言。
Javascript的语法规则应该是有浏览器内部的解释器定义。
以下有几点javascript的几点基础规则:
区分大小写:
javascript中的标识符是区分大小写的,这与其他一些语言是相同的。
Javascript中的关键字必须要小写。
Javascript的内置对象是以大写字母开头的,比如:
Math\Date等。
DOM(文档对象模型)对象必须要小写,但其方法通常是大小写混合。
标识符大小写错误,可以被浏览器识别,属于是语法错误。
标识符的命名规则:
javascript中的标识符可以是字母、数字、下划线。
但是标识符不可以以数字开头。
这一点与C语言是相同的。
保留字:
保留字是javascript语言系统所定义的具有特殊含义的‘词’。
不可以用做标识符。
Javascript中的保留字包括:
控制程序执行流程的if\for,DOM对象window\document,还有内置对象Date\Math等。
空格符号:
javascript是忽略空格的,包括在一行在包含空格与TAB符号,或者是空白行。
空格的出现主要是为了提高javascript的可读性。
在javascript中使用注释:
学习过计算机语言的人都应该知道“注释”实际上就是对程序代码的附加说明,主要是为了提高可读性的目的。
这在其他人阅读你写的程序或过一段时间在回过头来读自己的程序都是非常有帮助的。
如果想在javascript中添加注释的话,可以使用以下2种格式:
1,//注释说明,此种格式的注释主要用于为一行代码注释说明使用的,与C++的注释语法是一样的。
2,/*注释说明*/,此种格式的注释将跨越多行把阔住的内容注释掉。
这是C语言风格的注释,在调试代码的时候是非常有帮助的。
在注释范围内的所有内容都将被解释程序所忽略,不会得到执行机会。
这里有一点要注意到:
以上2种注释方法,是基于javascript的,所以只能够在