js02--对象、函数、switch、for、异常、表单验证

时间:2024-04-02 22:07:46

现在我们接着来继续学习有关js的一些基础。

1.undefined与null
    undefined:当变量声明但尚未赋值时,它的类型就是undefined
    null:表示一个不存在的对象,它的类型是object
    
2.对象:
    js中的所有事物都是对象:字符串、数字、数组、日期。对象是拥有属性与方法的数据

    创建对象:
var person=new Object();
person.firstName="Bill";
person.lastName="Gates";
person.age=56;

3.函数:
    function functionName(){...}
    
    函数局部变量:在函数内部被声明的变量,只能在函数内部访问,函数执行完毕,即被删除
    全局变量:在函数外声明的变量,网页上的所有脚本和函数都可以访问它
    变量的生存期:变量的生存期从声明时开始,局部变量在函数执行完毕即删除,全局变量在网页关闭时删除
    将值赋给尚未声明的变量,该变量自动变成全局变量
    
4.switch语句case子块需要使用break,阻止继续执行下一个case

5.for语句:

    var cars=["BMW","Volvo","Saab","Ford"];
for(var i=0;i<cars.length;++i){
document.write(cars[i]+"<br />");
}

6.九九乘法:

    var result=0;
for(var i=1;i<=9;++i){
for(var j=1;j<=i;++j){
resu=j*i;
document.write(j+"*"+i+"="+result+" ");
}
document.write("<br />");
}

7.for in:遍历对象属性或数组(不建议用于遍历数组)

    var person={firstName:"Bill",lastName:"Gates",age:56}
for(var x in person){person[x]}

8.break    continue
    break:跳出本层循环
    continue:跳出本次迭代

9.按钮

    <input type="button" value="查看消息" onclick="message()" />
<button type="button" onclick="myFunction()">测试输入值</button>

10.js错误:try{}catch{},还可以throw异常。异常可以是字符串、数字、布尔值、对象

    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+"!";
}
}

11.表单验证:表单数据在送往服务器前进行验证

    <form action="submitPage.html" onsubmit="return validateForm(this);" method="post">
Email:<input type="text" name="email" size="30" /> <br />
<input type="submit" value="Submit" />
</form> <script type="text/javascript">
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@")
dotpos=value.lastIndexOf(".")
if (apos<1||dotpos-apos<2)
{alert(alerttxt);return false}
else {return true}
}
} function validate_form(thisform)
{
with (thisform)
{
if (validate_email(email,"Not a valid e-mail address!")==false)
{email.focus();return false}
}
}
</script>