JavaScript
基础
一、
JavaScript
简述
JScript
是一种解释型的、基于对象的脚本语言。作用:
(1)
提供用户交互
(2)
动态更改内容
(3)
验证数据
二、嵌入
JavaScript
至网页的方式
(
1
)直接嵌入到
HTML
标签中
当 JavaScript 语句较少时,可以直接将代码嵌入到 HTML 标签中。
当 JavaScript 语句较少时,可以直接将代码嵌入到 HTML 标签中。
<
a
href="javascript:history.go(-1);">
上一步</a>
<
a
href="javascript:history.go(1);">
下一步</a>
(
2
)使用
<script>
标签将
JavaScritpt
直接嵌入文档。
<
script
language="javascript">
<!--
JavaScript
语句;
//-->
</
script
>
(
3
)将
JavaScript
源文件链接到
HTML
文档。
< script language="javascript" src="test.js"></script>
< script language="javascript" src="test.js"></script>
三、
JavaScript
变量
变量是一种引用内在位置的容器,用于保存在执行脚本时可以更改的值。在 JavaScript 网页窗口被关闭后,窗口内的变量也就被丢弃了。
变量是一种引用内在位置的容器,用于保存在执行脚本时可以更改的值。在 JavaScript 网页窗口被关闭后,窗口内的变量也就被丢弃了。
JavaScript
变量命名规则:
(1)
变量名必须以字母或下划线开头
(2)
变量名可以包含数字、大小写字母
(3)
变量名区分大小写
四、
JavaScript
数据类型
数据指的是进行统计
,
计算
,
科学研究和技术设计等所依据的各种信息
,
把这些信息按照一定的规则可以分成不同的种类
,
数据类型指的就是信息的种类
.
在日常生活中人们会把各种信息进行分类 , 比如动物类 , 植物类等等 , 在 JavaScript 中也要把脚本能够处理的信息进行分类 , 它们是字符串、数字、布尔值、对象、函数、空值和未定义。
1
字符串数据类型
字符串数据类型用来表示 JavaScript 中的文本 , 脚本中可以包含字符串文字,这些字符串文字放在一对匹配的的单引号或双引号中。字符串中可以包含双引号,该双引号两边需加单引号,也可以包含单引号,该单引号两边需加双引号。
字符串数据类型用来表示 JavaScript 中的文本 , 脚本中可以包含字符串文字,这些字符串文字放在一对匹配的的单引号或双引号中。字符串中可以包含双引号,该双引号两边需加单引号,也可以包含单引号,该单引号两边需加双引号。
下面是字符串的示例:
< Script language="JavaScript">
< Script language="JavaScript">
<!--
var
a = '
学习编程基础知识最重要,学习"JavaScript"也不列外'
;
document.write(a);
-->
</Script>
注 : 上面示例中 , 单引号中包含了双引号 .
</Script>
注 : 上面示例中 , 单引号中包含了双引号 .
2
数值数据类型
在 JavaScript 中整数和浮点数没有差别
在 JavaScript 中整数和浮点数没有差别
3
非数值类型
NaN 表示特殊的非数字值的类型,例如被 0 除返回 NaN。NaN 不与任何值相等,包括其本身。
NaN 表示特殊的非数字值的类型,例如被 0 除返回 NaN。NaN 不与任何值相等,包括其本身。
下列情况会返回
NaN:
对数据进行不适当的数学运算。
正无穷大。在 JavaScript 中如果一个正数太大的话返回 NaN 。
负无穷大。在 JavaScript 中如果一个负数太大的话返回 NaN 。
< Script language="JavaScript">
对数据进行不适当的数学运算。
正无穷大。在 JavaScript 中如果一个正数太大的话返回 NaN 。
负无穷大。在 JavaScript 中如果一个负数太大的话返回 NaN 。
< Script language="JavaScript">
<!--
var
a = 10*"ss";
document.write(a);
-->
</Script>
</Script>
4
布尔数据类型
5
空值数据类型
在JavaScript中数据类型 null 表示空值,赋值为null的变量,表示该变量没有保存有效的数、字符串、boolean、数组或对象。所以可以通过给一个变量赋 null 值来清除变量的内容。
在JavaScript中数据类型 null 表示空值,赋值为null的变量,表示该变量没有保存有效的数、字符串、boolean、数组或对象。所以可以通过给一个变量赋 null 值来清除变量的内容。
注意:
在JavaScript中,null 与 0 不相等(与在 C 和 C++ 中不同)。同时应该指出的是,JavaScript中 typeof 运算符将报告 null 值为 Object 类型。
在JavaScript中,null 与 0 不相等(与在 C 和 C++ 中不同)。同时应该指出的是,JavaScript中 typeof 运算符将报告 null 值为 Object 类型。
6
未定义数据类型
Undefined 表示未定义的数据类型,如下情况返回 undefined 值:
(1) 对象属性不存在,
(2)声明了变量但从未赋值。
注意:
不能通过与 undefined 做比较来测试一个变量是否存在,虽然可以检查它的类型是否为“undefined”。
Undefined 表示未定义的数据类型,如下情况返回 undefined 值:
(1) 对象属性不存在,
(2)声明了变量但从未赋值。
注意:
不能通过与 undefined 做比较来测试一个变量是否存在,虽然可以检查它的类型是否为“undefined”。
假设程序员想测试是否已经声明变量x,进行了下面的一些写法
(1) if (x == undefined) //
不正确,不能与undefined做比较
(2) if (typeof(x) == undefined) //
不正确,原因同上
(3) if (typeof(x) == "undefined") // 作某些操作.这个方法有效
(3) if (typeof(x) == "undefined") // 作某些操作.这个方法有效
考虑将 undefined 值与null做比较。当someObject.prop 包含 null 值或者someObject.prop 不存在时比较的结果为 true。
someObject.prop == null;
注意:
通常要检查一个对象属性是否存在,不使用上面的写法,而是使用 in 运算符,如下所示:
if ("prop" in someObject)
if ("prop" in someObject)
五、自定义函数
JavaScript
有两种函数:一种是语言内部事先定义好的函数叫预定义函数,另一种是自己定义的函数。
1
函数的定义格式
;
function func_name ([parameter0, ,...parameterN])
function func_name ([parameter0, ,...parameterN])
{
statement(s)
}
参数
func_name 新函数的名称。
}
参数
func_name 新函数的名称。
parameter
一个标识符,表示要传递给函数的参数。参数的作用是在函数调用时传送变量.
statement(s)
为function的函数体,可以是任何Javascript 语句块。
2
函数的调用
调用函数时在函数名后面加圆括号就可以了,通常函数调用语句放在html语言的一些属性中.
3 函数返回值语法
return[expression]
参数
expression 要作为函数值计算并返回的字符串、数字、数组或对象。
返回
如果提供了 expression 参数,则返回计算的结果。
说明
语句;指定由函数返回的值。return 动作计算 expression 并将结果作为它在其中执行的函数的值返回。return 动作导致函数停止运行,并用返回值代替函数。如果单独使用 return 语句,则它返回 null。您不能返回多个值。如果尝试返回多个值,则将只返回最后一个值。
调用函数时在函数名后面加圆括号就可以了,通常函数调用语句放在html语言的一些属性中.
3 函数返回值语法
return[expression]
参数
expression 要作为函数值计算并返回的字符串、数字、数组或对象。
返回
如果提供了 expression 参数,则返回计算的结果。
说明
语句;指定由函数返回的值。return 动作计算 expression 并将结果作为它在其中执行的函数的值返回。return 动作导致函数停止运行,并用返回值代替函数。如果单独使用 return 语句,则它返回 null。您不能返回多个值。如果尝试返回多个值,则将只返回最后一个值。
<
html
>
<
head
>
<
Script
language="JavaScript">
<!--
//
定义函数
function func_name (a,b){
var sum=a*b;
return(a*b)
}
-->
</
Script
>
</
head
>
<
body
>
<
form
action="" method=post name="myform" >
<!--
使用html语言的普通按钮调用函数 -->
<
input
type="button" value="button" onClick="document.write(func_name(5,6))">
</
form
>
</
body
>
</
html
>
4
函数的递归
递归是一种重要的编程技术。该方法用于让一个函数从其内部调用其自身。递归和迭代(循环)是密切相关的,一般能用递归处理的算法也都可以采用迭代,反之亦然。确定的算法通常可以用几种方法实现,您只需选择最自然贴切的方法,或者您觉得用起来最轻松的一种即可。
递归是一种重要的编程技术。该方法用于让一个函数从其内部调用其自身。递归和迭代(循环)是密切相关的,一般能用递归处理的算法也都可以采用迭代,反之亦然。确定的算法通常可以用几种方法实现,您只需选择最自然贴切的方法,或者您觉得用起来最轻松的一种即可。
循环语句使用不当,会产生死循环,同样一个递归函数,如果最终不能得到一个确定的结果,它就会没有终点。这样的递归将导致计算机产生“无限”循环。因此在设计递归函数时应特别仔细。为了防止无限循环,可以设计一个做自加运算的变量,用于记录函数自身调用的次数,如果次数太多就使它自动退出。下面是递归的示例。
<
Script
language="JavaScript">
function factorial(aNumber) {
//
如果这个数不是一个整数,则向下舍入。
aNumber = Math.floor(aNumber);
//
如果这个数小于 0,拒绝接收。
if (aNumber < 0) {
return -1;
}
//
如果为 0,则其阶乘为 1。
if (aNumber == 0) {
return 1;
}
//
否则,递归直至完成。
else
return (aNumber * factorial(aNumber-1));
}
document.write(factorial(10));
</
Script
>
六、
JavaScript
核心对象
JavaScript
对象是属性和方法的集合。一个方法就是一个函数,是对象的成员。属性是一个值或一组值,也是对象的成员。JavaScript支持四种类型的对象:内部对象、生成的对象、宿主给出的对象(如 Internet 浏览器中的 window 和 document)以及 ActiveX 对象(外部组件)。下面是JavaScript语言内部的核心对象:
1 Array
表述数组。
2 Boolean 表述布尔值。
3 Date 表述日期。
4 Function 指定了一个可编译为函数的字符串 JavaScript 代码。
5 Math 提供了基本的数学常量和函数;如其PI属性包含了π的值。
6 Number 表述实数数值。
7 Object 包含了由所有 JavaScript 对象共享的基本功能。
8 RegExp 表述了一个正则表达式;同时包含了由所有正则表达式对象的共享的静态属性。
9 String 表述了一个 JavaScript 字符串。
JavaScript在线参考手册:http://doc.51windows.net/jscript5/?url=/jscript5/dir.htm
2 Boolean 表述布尔值。
3 Date 表述日期。
4 Function 指定了一个可编译为函数的字符串 JavaScript 代码。
5 Math 提供了基本的数学常量和函数;如其PI属性包含了π的值。
6 Number 表述实数数值。
7 Object 包含了由所有 JavaScript 对象共享的基本功能。
8 RegExp 表述了一个正则表达式;同时包含了由所有正则表达式对象的共享的静态属性。
9 String 表述了一个 JavaScript 字符串。
JavaScript在线参考手册:http://doc.51windows.net/jscript5/?url=/jscript5/dir.htm