JavaScript基础
JavaScript组成:
ECMAScript:解释器,翻译
DOM:Document Object Model
BOM:Browser Object Model
变量类型
var a = 12; number类型
a=‘sdadada’; string类型
a=true; boolean类型
a=function(){ } function类型
a=document; object类型
var b;
alert(typeof b); undefined类型
1.真的没定义
2.虽然定义了但没有给东西
变量之间类型转换
parseInt
把字符串转化成数字类型且只能转化小数,从左到右看直到非数字就跳出如果没有数字就出现NAN(Not A Number)
parseFloat
转换小数
任何数与NAN相加都是NAN
NAN和NAN是不相等的
isNAN(变量);
来检验是不是NAN
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>123</title>
<style>
</style>
<link id="l1" rel="stylesheet" type="text/css" href="new 1.css">
<script> /*在里面定义函数*/
var a='12px';
alert(parseInt(a));
</script>
</head>
<body>
</body>
</html>
判断是不是NaN
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>123</title>
<style>
</style>
<link id="l1" rel="stylesheet" type="text/css" href="new 1.css">
<script> /*在里面定义函数*/
window.onload=function(){
btn1.onclick=function(){
var n1=parseInt(txt1.value);
var n2=parseInt(txt2.value);
if(isNaN(n1)){
alert("您输入的第一个数字有误");
}
else if(isNaN(n2)){
alert("您输入的第二个数字有误");
}
else{
alert(n1+n2);
}
}
}
</script>
</head>
<body>
<input id="txt1" type="text">
<input id="txt2" type="text">
<input id="btn1" type="button" value="求和">
</body>
</html>
正确的:
第一个错误:
第二个错误:
隐式类型转换:
alert(a==b); //true
光转化类型,然后比较
alert(a===b); //false
不转化类型直接比较
变量作用域:
子函数可以用父函数的局部变量
隔行变色:
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>123</title>
<style>
</style>
<link id="l1" rel="stylesheet" type="text/css" href="new 1.css">
<script> /*在里面定义函数*/
window.onload=function(){
var aLi=document.getElementsByTagName('li');
for(var i=0;i<aLi.length;i++){
if(i%2==0){
aLi[i].style.background='#ccc';
}
else{
aLi[i].style.background='';
}
}
}
</script>
</head>
<body>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</body>
</html>
秒转时间
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>123</title>
<style>
</style>
<link id="l1" rel="stylesheet" type="text/css" href="new 1.css">
<script> /*在里面定义函数*/
var s=156;
alert(parseInt(s/60)+'分'+s%60+'秒');
</script>
</head>
<body>
</body>
</html>
真:true,非零数字,非空字符串,非空对象
假:false,数字零,空字符串,空对象(null),undefined
Json
json的json.length是undefinded
json的循环
for(var in json){ }
for in 循环