1.JavaScript 函数
1.1声明
function functionname() { 这里是要执行的代码 }带参
myFunction(argument1,argument2)返回
function myFunction()
{
var x=5;
return x;
}
1.2 JavaScript变量
局部变量:在JavaScript函数内部声明的变量是局部变量,只能在函数内部访问它。(该变量的作用域是局部的)。
可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。
只要函数运行完毕,本地变量就会被删除。
全局变量:函数外声明的变量是全局变量,网页上所有脚本和函数都能访问它。
变量生存期:开始于声明,局部变量在函数运行以后被删除,全局变量在页面关闭后被删除。
如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明。//carname="Volvo";即使在函数内执行,也是声明一个全局变量。
2.JavaScript 运算符
2.1 基本同java
2.3===全等(值和类型)。
3.JavaScript 语句
3.1 if, if...else, switch;
3.2 for
for (语句 1; 语句 2; 语句 3) { 被执行的代码块 }
语句 1 在循环(代码块)开始前执行
语句 2 定义运行循环(代码块)的条件
语句 3 在循环(代码块)已被执行之后执行
for/In
var person={fname:"John",lname:"Doe",age:25};
for (x in
person)
{
txt=txt + person[x];
}
3.3 while,do/while
1.do/while :do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环。
3.4 break,continue
3.5 try,catch,throw
<script> function myFunction() { try { var x=document.getElementById("demo").value; if(x=="")throw "empty"
; if(isNaN(x))throw "not a number"
; if(x>10)throw "too high"
; if(x<5)throw "too low"
; } catch(err) { var y=document.getElementById("mess"); y.innerHTML="Error: " + err + "."; } } </script> <h1>My First JavaScript</h1> <p>Please input a number between 5 and 10:</p> <input id="demo" type="text"> <button type="button" οnclick="myFunction()">Test Input</button> <p id="mess"></p>
3.6 表单验证示例
<script type="text/javascript">
function validate_email(field,alerttxt) //这个函数用来验证email的格式是否满足xxx@xxx.xxx的格式,其中要求@前面必须要至少一个字符,@与.之间至少要有一个字符
{
with (field) //使用with (XXX)语句是指定默认对象,这样在访问这个HTML元素(就是这里的field)的值的时候,就不需要指定对象了,可以直接使用value.indexOf。否则的话,需要field.value.indexOf
{ apos=value.indexOf("@") //找到第一个@的位置。如果找不到的话,apos值为-1,找到的话就是@在字符串里面的以0开始的位置索引
dotpos=value.lastIndexOf(".") //找到最后一个.的位置
if (apos<1||dotpos-apos<2) //如果找不到@或者@是第一个字符(apos<1),或者@之后没有.或者@与.之间没有任何字符(dotpos-apos<2)
{alert(alerttxt);return false} //弹出对话框显示错误消息并返回假表明验证email格式失败
else {return true} //否则返回真
}
}
function validate_form(thisform) //这个函数用来在表单提交时对表单做验证,通常的使用方式是表单里面有个提交按钮在点击时调用这个函数,如下例所示<input type="submit" name="sub" value="提交" οnclick="validate_form(this)"/>,当这个函数返回假的时候,表单不会提交
{
with (thisform) //同上面的with (field)
{
if (validate_email(email,"Not a valid e-mail address!")==false) //调用validate_email来验证表单中的email这个字段 ,判断是否失败
{email.focus();return false} //如果失败的话,让email获得焦点,同时返回假使的表单不提交
}
}
</script>