一、介绍
一种客户端语言,在浏览器执行,原名叫ECMAScript。是一种直接就能解释执行的脚本语言(就是说,代码执行不进行预编译),另外还有dos命令,SQL。它是非常灵活的动态语言,不严谨。数据类型不固定。用途很广常被用来改进设计、验证表单、检测浏览器、创建cookies......
二、基本组成
Dom(文档对象模型)
Bom(浏览器对象,有兼容性的问题)
三、如何实现 JavaScript
1.方式一:
<script language = "javascript" type="text/javascript">
document.write("输出的文字");
</script>
2.方式二:
<script src="helloworld.js"></script>
3.如何与老的浏览器打交道:
那些不支持 JavaScript 的浏览器会把脚本作为页面的内容来显示。为了防止这种情况发生,我们可以使用这样的 HTML 注释标签:
<script type="text/javascript">
<!--
document.write("Hello World!");
//-->
</script>
注:释行末尾的两个正斜杠是 JavaScript 的注释符号,它会阻止 JavaScript 编译器对这一行的编译。
四、 放置何处
当页面载入时,会执行位于 body 部分的 JavaScript。
当被调用时,位于 head 部分的 JavaScript 才会被执行。
你可以在文档中放置任何数量的脚本,因此你既可以把脚本放置到 body,又可以放置到 head 部分。
注意:在一个HTML文档中,所有位置的脚本代码,包括引入的外部js代码,他们都将成为一个整体。你可以把他们想象成在一个类中。因此,有时来自不同文件的重名方法或重名变量,会导致意想不到的错误发生。
五、语法
JavaScript 是由浏览器执行的语句序列。这些命令的作用是告诉浏览器要做的事情。通常要在每行语句的结尾加上一个分号。
1.数据类型
5 种基本数据类型
undefined / null / boolean / number / string
1种复杂的数据类型 : Object类型,Object类型是所有其他对象的基类。
注意:JavaScript并不区分浮点数和整数,都是用number来表示。
2.基本操作符
算术运算符:+ – * / % ++ -- ,其中+号还被重载用于拼接字符串,另外,任何类型+上字符串都是字符串。
赋值运算符:= += -= *= /= %=
比较运算符:== === != > < >= <=
逻辑运算符:&& || !
条件运算符:? :
3.控制语句
这就是我们常说的if-else之类的控制语句。
常用的并不多:if语句、switch语句、for语句、while语句、for-in语句。
4.函数
将脚本编写为函数,就可以避免页面载入时执行该脚本。函数包含着一些代码,这些代码只能被事件激活,或者在函数被调用时才会执行。你可以在页面中的任何位置调用脚本(如果函数嵌入一个外部的 .js 文件,那么甚至可以从其他的页面中调用)。建议将函数在页面起始位置定义,即 部分。JavaScript函数相对其他语言来说有很大不同。JavaScript函数既可以作为参数,也可以作为返回值。此外JavaScript函数可以接受任意数量的参数,并且可以通过arguments对象来访问这些参数。
创建函数的语法:
function 函数名() { 代码... }
function 函数名(var1,var2,...,varX) { 代码... }
5.变量
JavaScript 是一种弱类型的语言,因此变量的类型由赋值号右边的数据所决定。
JavaScript 变量名称的规则:
应该起一些具有意义的,描述性的,让人望文生义的变量名
变量对大小写敏感(y 和 Y 是两个不同的变量)【JavaScript 对大小写敏感】
变量必须以字母或下划线开始
变量名不能使用系统的关键字或保留字
类型分为两种:基本类型和引用类型
基本类型:是前面提到的5种基本数据类型,在内存中占据实际大小的空间,赋值的时候,会在内存中创建一份新的副本。保存在栈内存中。
引用类型:是前面提到的Object以及基于它的其他复杂数据类型,指向对象的指针而不是对象本身,赋值的时候,只是创建了一个新的指针指向对象。保存在堆内存中。
JavaScript 变量的生存期
当在函数内声明了一个变量后,就只能在该函数中访问该变量。当退出该函数后,这个变量会被撤销。这种变量称为本地变量。你可以在不同的函数中使用名称相同的本地变量,这是因为只有声明过变量的函数能够识别其中的每个变量。
如果您在函数之外声明了一个变量,则页面上的所有函数都可以访问该变量。这些变量的生存期从声明它们之后开始,在页面关闭时结束。
6. 消息框
三种消息框:警告框、确认框、提示框
alert("文本");警告框经常用于确保用户可以得到某些信息。当警告框出现后,用户需要点击确定按钮才能继续进行操作。
confirm("文本");确认框用于使用户可以验证或者接受某些信息。当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作。如果用户点击确认,那么返回值为 true。如果用户点击取消,那么返回值为 false。
prompt("文本","默认值");提示框经常用于提示用户在进入页面前输入某个值。当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。
7. 事件
事件是可以被 JavaScript 侦测到的行为。JavaScript 使我们有能力创建动态页面。事件是可以被 JavaScript 侦测到的行为。网页中的每个元素都可以产生某些可以触发 JavaScript 函数的事件。比方说,我们可以在用户点击某按钮时产生一个 onClick 事件来触发某个函数。事件在 HTML 页面中定义。
事件举例:
鼠标点击
页面或图像载入
鼠标悬浮于页面的某个热点之上
在表单中选取输入框
确认表单
键盘按键
注意:事件通常与函数配合使用,当事件发生时函数才会执行。
onload 和 onUnload
当用户进入或离开页面时就会触发 onload 和 onUnload 事件。onload 事件常用来检测访问者的浏览器类型和版本,然后根据这些信息载入特定版本的网页。onload 和 onUnload 事件也常被用来处理用户进入或离开页面时所建立的 cookies。例如,当某用户第一次进入页面时,你可以使用消息框来询问用户的姓名。姓名会保存在 cookie 中。当用户再次进入这个页面时,你可以使用另一个消息框来和这个用户打招呼:"Welcome John Doe!"。
onFocus, onBlur 和 onChange
通常相互配合用来验证表单。下面是一个使用 onChange 事件的例子。用户一旦改变了域的内容,checkEmail() 函数就会被调用。
onSubmit
用于在提交表单之前验证所有的表单域。
onMouseOver 和 onMouseOut
用来创建“动态的”按钮。
8.try...catch语句
有两种在网页中捕获错误的方法:
使用 try...catch 语句。(在 IE5+、Mozilla 1.0、和 Netscape 6 中可用)
使用 onerror 事件。这是用于捕获错误的老式方法。(Netscape 3 以后的版本可用)
注意:chrome、opera 和 safari 浏览器不支持 onerror 事件。【不建议使用此方式】
9.Throw 声明
throw 声明的作用是创建 exception(异常)。你可以把这个声明与 try...catch 声明配合使用,以达到控制程序流并产生精确错误消息的目的。
10.特殊字符
JavaScript 中使用反斜杠来向文本字符串添加特殊字符。
网友评论