JavaScript组成
ECMAScript:将人类的语言翻译为计算机语言(计算机只能识别0/1),同时将计算机语言翻译成人类看的懂得语言。就是编译器、解释器。
DOM: Document Object Model(操作HTML的能力),document
BOM:Browser Object Model,与浏览器打交道的操作, window
兼容性:
ECMA:几乎没有兼容性问题
DOM:有一些兼容性问题
BOM:没有兼容性问题(完全不兼容)
变量的类型
typeof(查找变量类型)
EG:
var a=12
alert(typeof a)
返回变量类型为number类型
a="saufafu"
返回变量类型为string(字符串)类型
a="true"
返回变量类型为boolean类型
a=function(){
alert('ask')
}
返回变量类型为function类型
a=document
返回变量类型为object类型
var b//定义了没有赋值
alert('typeof b')//没有定义
返回变量类型为undefined类型
变量的类型转换
parseInt-------将字符转换成整数
var a='3';
alert(parseInt(a));
parseFloat-----------将字符转换成Float类型,可以是小数,也可以是整数。
var a='3.5';
alert(parseFloat(a));
变量的作用域(作用范围)
局部变量、全局变量
function aaa(){
var a=12;//局部变量:就是只能在定义他的函数中使用。
}
var a; //全局变量:就是在任何地方都可以用。
function aaa(){
a=12;
}
闭包
子函数可以使用父函数的局部变量
function aaa(){ //父函数
var a=12;
function bbb(){ //子函数
alert(a);
}
}
函数命名规范
可读性
规范性
匈牙利命名法
类型前缀
首字母大写
类型前缀
运算符
IF循环
if(条件1){
语句1
}else if(条件2){
语句2
}else{
语句3
}
switch循环
var sex='男';
switch(sex){
case'男':
alert(name+'先生,您好!');
break;
case'女':
alert(name+'女士,您好!');
break;
default:
alert(name+'您好!');
}
break与continue
for(var i=0;i<5;i++){
if(i==2){
break; //整个循环在i=2处中断,后面的i=3/i=4都不会执行。
continue; //只中断本次循环,及中断循环i=2;
}
}
JSON(用于存数据)
var json={a:12,b:5,c:7};
var arr=[12,5,7];
alert(json.a);
alert(arr[0])
循环
for(var i in json){
alert('第'+i+'个东西:'+json[i])
}