一、NaN
NaN即非数值,是一个特殊的数值。NaN本身有两个非同寻常的特点。首先,任何涉及NaN的操作(例如NaN/10)都会返回NaN,这个特点在多步计算中有可能导致问题。其次,NaN与任何值都不想等,包括NaN本身。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>如何检测NaN</title>
<script type="text/javascript">
var a=parseInt('abc');
var b=parseInt('aaa');
alert(a==b);//NaN与它本身不相等 false
/*
var a=parseInt('abc');
//isNaN(值)
alert(isNaN(a)); true
*/
</script>
</head>
<body>
</body>
</html>
二、取余数%
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>取余数</title>
<script type="text/javascript">
alert(17%5);//弹出2
</script>
</head>
<body>
</body>
</html>
三、判断:if 、switch、三目运算符
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>?:</title>
<script type="text/javascript">
var a=3;
/*
if(a%2==0)
{
alert('双数');
}
else
{
alert('单数');
}
*/
a%2==0?alert('双数'):alert('单数'); // 条件?语句1:语句2
</script>
</head>
<body>
</body>
</html>
四、跳出:break、continue
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>break and continue</title>
<script type="text/javascript">
var i=0;
for(i=0;i<5;i++)
{
if(i==2)
{
//break; 终止整个循环,依次弹出0,1
continue;//终止本次循环,继续下一次循环,依次弹出0,1,3,4
}
alert(i);
}
</script>
</head>
<body>
</body>
</html>
五、json一种轻量级的数据交换格式
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>json</title>
<script type="text/javascript">
var obj={a:5,b:6,c:'abc',d:[1,2,3,4]};//json 一种数据交换格式,弹出1,2,3,4
alert(obj.d);
</script>
</head>
<body>
</body>
</html>
六、for in一般与json或其他对象配合使用
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>for in</title>
<script type="text/javascript">
var obj={a:5,b:3,c:98};//for in 一般与json或其他对象配合 使用
var attr='';
for(attr in obj)//执行3次,依次弹出a,b,c
{
alert(attr);
}
</script>
</head>
<body>
</body>
</html>
七、函数返回值return
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>函数返回值</title>
<script type="text/javascript">
function sum(a,b)
{
return a+b;//弹出18
}
alert(sum(12,6));//没有return或return后没有东西,返回undefined
</script>
</head>
<body>
</body>
</html>
八、函数传参
可变参(不定参):arguments是个类似数组又不是数组的对象,能够用arguments[n]来访问对应的单个参数的值。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>arguments</title>
<script type="text/javascript">
function show()
{
alert(arguments.length);//arguments中存放的是[12,5],弹出2
}
show(12,5);
</script>
</head>
<body>
</body>
</html>
九、参数求和
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>参数求和</title>
<script type="text/javascript">
/*
function sum(a,b,c)
{
alert(a+b+c);
}
sum(12,5,5);
*/
function sum()
{
var result=0;
var i=0;
for (var i = 0; i <arguments.length; i++)
{
result+=arguments[i];//弹出27
}
alert(result);
}
sum(12,5,5,5);
</script>
</head>
<body>
</body>
</html>
十、取非行间样式
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>css函数</title>
<style type="text/css">
#div1{
width:100px;height:100px;background: red;
}
</style>
<script type="text/javascript">
window.onload=function()
{
var oDiv=document.getElementById('div1');
//alert(oDiv.style.width);style只能取行间样式
//alert(oDiv.currentStyle.width);//currentStyle获取计算后的样式.只能在IE下用
// alert(getComputedStyle(oDiv,false).width) ;//只能在火狐下用不能在IE下用
//解决兼容性问题
if (oDiv.currentStyle)
{
alert(oDiv.currentStyle.width);
}
else
{
alert(getComputedStyle(oDiv,false).width);
}
}
</script>
</head>
<body>
<div id="div1">
</div>
</body>
</html>