Posted in Javascript onApril 10, 2013
javascipt-基础---细节需要注意的地方:
1、特殊数值:NaN、Infinity、isNaN()、isFinite()
NaN:
var a=parseInt('a123'); window.alert(a); //输出NaN
Infinity:
window.alert(6/0);//输出Infinity 无穷大(最好不要这样写)
isNaN():判断是不是数,不是数返回true,是数返回false
var a="dd"; window.alert(isNaN(a)); //返回true
isFinite():用于判断是不是无穷大。如果 number 是 NaN(非数字),或者是正、负无穷大的数,则返回 false。
window.alert(isFinite(6/1)); //返回true window.alert(isFinite(6/0)); //返回false
2、逻辑运算符:
在逻辑运算中,0、""、false、null、undefined、NaN均表示false
(或 || )|| 将返回第一个不为false 那个值(对象亦可),或者是最后一个值(如果全部都是false的话)
这个知识点在javascript框架中运用很多。
a、
var a=true; var b=false; var c=b || a; window.alert(c); //输出true
b、
var a=2; var b=0 var c= a || b; window.alert(c); //返回第一个值,输出2
c、
var a=false; var b=""; var c =0; var d =new Object(); //对象 var aa=a || b || c ||d ; //a,b,c 全是false 这返回d window.alert(aa); //返回d (对象)
4、多分支 switch
var flag=1; switch(flag){ default: window.alert("啥都不是"); case 'a': window.alert("a"); case 'b': window.alert("b"); //没有break语句,没有匹配成功, 此时结果都输出 }
var flag=1; switch(flag){ default: window.alert("啥都不是"); case 'a': window.alert("a"); case 1: window.alert("b"); //没有break语句 当匹配成功则不再找break语句 此时输出b }
5、函数调用
func.js
function abc(val){window.alert("abc()"+val); } //有返回值的函数 function test(num1,num2){ var res=0; res =num1+num2; return res; } //没有返回值的的函数 function noVal(num1,num2){ var res=0; res=num1+num2; }
函数调用:
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <script type="text/javascript" src="func.js"></script> <script type="text/javascript">//函数调用1---普通调用(常用调用函数) abc(50); //函数调用2---变量=函数名; 调用的时候这样调用:变量(实际参数) var test1=abc; //此时变量就相当于函数的引用(指针) window.alert(abc); //输出abc整个函数代码,就能理解了 test1(500); //如果调用的函数有返回值,可以在程序中直接返回,没有返回值但是你接收了,这是返回undefined //调用有返回值的函数 var res=test(20,40); window.alert(res); //调用没有返回值的函数 window.alert("调用没有返回值的函数"); var res=noVal(1,1); //此时输出undefined window.alert(res); </script> </head> <body></body> </html>
js支持参数个数可变的函数
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <script type="text/javascript" src="func.js"></script> <script type="text/javascript"> //函数调用--递归 /* function abc(num){ if(num>3){ abc(--num); } document.writeln(num); } //调用函数 abc(5); //输出 3 3 4 */ //js支持参数个数可变的函数 function abc(){ //js中提供了一个arguments,可以访问所以传入的值 window.alert(arguments.length); //传入多少个 //遍历传入的参数 for(var i=0;i<arguments.length;i++){ window.alert(arguments[i]); } } //调用 window.alert("abc(12,13,\"hello\",56)"); abc(12,13,"hello",56) window.alert("abc(5)"); abc(5); window.alert("abc()"); abc(); </script> </head> <body></body> </html>
javascipt基础内容--需要注意的细节
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@