一、JavaScript简述
JScript 是一种解释型的、基于对象的脚本语言。作用:
(1) 提供用户交互
(2) 动态更改内容
(3) 验证数据
二、嵌入JavaScript至网页的方式
(1)直接嵌入到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>
三、JavaScript变量
变量是一种引用内在位置的容器,用于保存在执行脚本时可以更改的值。在JavaScript网页窗口被关闭后,窗口内的变量也就被丢弃了。
JavaScript变量命名规则:
(1) 变量名必须以字母或下划线开头
(2) 变量名可以包含数字、大小写字母
(3) 变量名区分大小写
四、JavaScript数据类型
数据指的是进行统计,计算,科学研究和技术设计等所依据的各种信息,把这些信息按照一定的规则可以分成不同的种类,数据类型指的就是信息的种类.
在日常生活中人们会把各种信息进行分类,比如动物类,植物类等等,在JavaScript中也要把脚本能够处理的信息进行分类,它们是字符串、数字、布尔值、对象、函数、空值和未定义。
1 字符串数据类型
字符串数据类型用来表示JavaScript中的文本,脚本中可以包含字符串文字,这些字符串文字放在一对匹配的的单引号或双引号中。字符串中可以包含双引号,该双引号两边需加单引号,也可以包含单引号,该单引号两边需加双引号。
下面是字符串的示例:
<Script language="JavaScript">
<!--
var a = '学习编程基础知识最重要,学习"JavaScript"也不列外';
document.write(a);
-->
</Script>
注:上面示例中,单引号中包含了双引号.
2 数值数据类型
在JavaScript中整数和浮点数没有差别
3 非数值类型
NaN表示特殊的非数字值的类型,例如被 0 除返回 NaN。NaN 不与任何值相等,包括其本身。
下列情况会返回NaN:
对数据进行不适当的数学运算。
正无穷大。在JavaScript中如果一个正数太大的话返回NaN。
负无穷大。在JavaScript中如果一个负数太大的话返回NaN。
<Script language="JavaScript">
<!--
var a = 10*"ss";
document.write(a);
-->
</Script>
4 布尔数据类型
5 空值数据类型
在JavaScript中数据类型 null 表示空值,赋值为null的变量,表示该变量没有保存有效的数、字符串、boolean、数组或对象。所以可以通过给一个变量赋 null 值来清除变量的内容。
注意:
在JavaScript中,null 与 0 不相等(与在 C 和 C++ 中不同)。同时应该指出的是,JavaScript中 typeof 运算符将报告 null 值为 Object 类型。
6 未定义数据类型
Undefined表示未定义的数据类型,如下情况返回 undefined 值:
(1)对象属性不存在,
(2)声明了变量但从未赋值。
注意:
不能通过与 undefined 做比较来测试一个变量是否存在,虽然可以检查它的类型是否为“undefined”。
假设程序员想测试是否已经声明变量x,进行了下面的一些写法
(1) if (x == undefined) //不正确,不能与undefined做比较
(2) 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)
五、自定义函数
JavaScript有两种函数:一种是语言内部事先定义好的函数叫预定义函数,另一种是自己定义的函数。
1 函数的定义格式;
function func_name ([parameter0, ,...parameterN])
{
statement(s)
}
参数
func_name 新函数的名称。
parameter 一个标识符,表示要传递给函数的参数。参数的作用是在函数调用时传送变量.
statement(s) 为function的函数体,可以是任何Javascript 语句块。
2 函数的调用
调用函数时在函数名后面加圆括号就可以了,通常函数调用语句放在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
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zerolsy/archive/2008/03/13/2179616.aspx