三、流程控制:
1、单行语句var age =20;//单行语句2、复合语句
花括号包含起来的与聚集和叫做复合语句,一对花括号表示一个复合语句 ,处理时可以当成一个单行语句来看待,一般复合句与叫做代码块。{
var height:200px;var width:200px;}3、空语句也是一条语句
4、条件语句
if里面的括号(box>50)返回的结果转换为布尔值是true的时候,则执 行后面的一条语句,否则不执行var box=100;
if(box>50)alert(box);var box=100;
if(box>50)//if语句里的表达式如果返回的false,只会不执行后面的一条 语句。第二条语句与if语句无关,所以会执行alert(box);alert('不管if是true还是false我都要执行');
var box=10;
if(box>50){//这里是复合语句被当做单行语句来对待,当条件不满足时 ,都不执行,alert(box);alert('不管if是true还是false我都要执行');}var box=100;
if(box>50)//if语句中的返回值就是boolean类型,当返回值是true时返 回100,false时不返回;if(123)//括号内换成123时返回值是100,说明是trueif(0)//没有返回值,说明是falseif("Ms.Wang")//返回值是100,说明是truealert(box); 四、循环1、do while循环:先运行再判断的循环体;当while判断为false时退出
循环,当判断为true时执行循环,如果条件不满足时至少会执行一次。循 环条件要注意正确性,否则会陷入死循环。var box =1;
do{ alert(box);//依次输出1、2、3、4、5box++;}while(box<=5); 2、while语句:先判断再执行:条件不满足一次也不会执行var box=1;while(box<=5){ alert(box);box++;} 3、for循环:先判断再执行循环体,如果结果是true则执行,若结果为 false则退出循环体。for(var box=1;box<=5;box++){
alert(box);}4、for in 语句 针对对象获取属性值时用
var box={
'name':'Linda','age':20,'address':'云南'}
for (var x in box){
alert(p);}5、continue和break语句
for(var box =1;box<=10;box++){ if(box==5)break;//只会执行打印出1-4,即退出循环体了document.write(box+'<br/>');} for(var box =1;box<=10;box++){ if(box==5)continue;//5不会打印出来,而只是退出了当前循环体document.write(box+'<br/>');} 6、with语句:将代码的作用域设置到一个特定对象中去var box={
'name':'Linda','age':20,'heighr':165}with(box){
var n=name;var a=age;var h=height;}alert(n+a+h);
五、函数//函数本身没有执行功能
声明函数function box(){ alert("我只有被调用才能执行");} function box(name,age){ alert("你的姓名是:"+name+",年龄是:"+age);}
box("linda",29);//调用函数 返回值类函数实例1:function box(){return"我只有被调用了才能执行!";//return表示把这句话字符串返
回回来}//打印出函数调用后返回回来的结果,否则看不出来效果,虽然已经调用 了函数,但是看不出来效果alert(box());//相当于box()="我只只有被调用了才能执 行". 注:使用返回值类的函数情况较多,直接调用函数的情况较少
返回值类函数实例2:
function box(){//也就是说当一个函数遇到第一个return时就会终止 函数继续往下执行return 10;return 100;}alert(box());//结果是10,也就是说当一个函数遇到第一个return时就
会终止函数继续往下执行函数返回值类函数实例3: arguments(不介意传递进来的参数是多少,根据索
引值获取即可)function box(){ return arguments[0]+'|'+arguments[1]+'|'+arguments[2];}alert(box('小夏','营销',20));//函数并没有设置参数,但是一样可以
返回想要的值4:获取参数数量:length属性智能获取参数个数。动态获取所需参数
function box(){ var sum =0;for(var i =0;i<arguments.length;i++){ sum+=arguments[i];//动态获取参数个数和具体的数值,实现求和 arguments}return arguments.length;}alert(box(1,2,3,4,5,6,7,8,9,10));
重载:即根据参数,选择相同函数名而参数不同的函数,但是js没有重载
功能,是根据顺序来的function box(num,a){ return num+100;} function box(num){ return num+200;}alert(box(3,3));//结果是203;若是把两个box函数调换顺序,则结果是
103,所以执行的函数是距离调用函数较近的函数,而不是说哪个函数的参 数与调用函数传递的参数个数一致就调用哪个函数, 六、对象和数组对象包含那些元素:属性(字段)、方法(函数)
1、字面量方式创建方法
var box={//box是一个对象name:'linda',age:20};alert(box.name);//属性方式输出,
alert(box['name']);//数组方式输出,必须加上引号,否则无法输出。 2、构造函数方法创建对象并调用函数function objrun(){ return "123";}var box = new Object();
box.name='Linda';box.age=20;box.run=objrun();
alert(box.run);//输出123box.run=objrun;
alert(box.run());//输出123总结:对象=函数,所以调用和输出时必须有且只有一个括号否则就不能正
确输出3、字面量方法创建对象并调用函数
var box={
name:'linda',age:20,run:function(){//匿名函数return '123'; }};alert(box.run()); //调用函数或者方法,如果没有圆括号会打印源代
码,如果有圆括号才会打印返回值alert(box.name);
delete box.name;//删除属性,返回值是undefinedalert(box.name); function box(obj){ if(obj.name!=undefined)alert(obj.name);if(obj.age!=undefined)alert(obj.age);if(obj.love!=undefined)alert(obj.age);//这里没有love属性,所 以会返回undefined,所以返回之前先做一下判断较好}var obj={//对象封装属性,也叫做命名对象
name:'Linda',age:20,address:'云南'};box(obj);//调用