if语句
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">if(true){alert("success");}else if(){alert("idk");}else{alert("flase");}</script><title>测试</title></head><body></body></html>
练习
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var score = prompt("请输出期末成绩");if(score>100||score<0||isNaN(score)){alert("sorry");}else{if(score>=90){alert("nice");}else if(score>=60){alert("good");}else{alert("bye");}}</script><title>测试</title></head><body></body></html>
条件分支语句(switch)
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var num = 3;switch(num){case 1:console.log("1");break;case 2:console.log("2");break;case 3:console.log("3");break;default:console.log("error");break;}</script><title>测试</title></head><body></body></html>
while循环
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var i = 0;while(i<10){document.write(i);i++;}</script><title>测试</title></head><body></body></html>
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var i = 0;do{document.write(i+"</br>");i++;}while(i<10);//先执行再判断</script><title>测试</title></head><body></body></html>
for循环
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var i = 0;for(;i<10;i++){document.write(i+"</br>");}</script><title>测试</title></head><body></body></html>
break和continue
- break跳出
-
对象Object
内建对象
- 宿主对象 主要指由浏览器提供的对象 比如BOM DOM
自定义对象
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">//创建对象//使用new关键字调用的函数,是构造函数,专门用来创建对象var obj = new Object();//添加属性 对象.属性名=属性值obj.name = "Tom";obj.age = 18;//读取对象中属性 对象.属性名console.log(obj.name);//修改就重新赋值//使用[]更加灵活obj[name] = "Tom";console.log(obj[name]);</script><title>测试</title></head><body></body></html>
js对象的属性值可以是任何数据类型也可以是对象
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var obj = new Object();var obj2 = new Object();obj2[name] = "Tom";obj2[age] = "18";obj[test] = obj2;console.log(obj[test][name]);</script><title>测试</title></head><body></body></html>
In 运算符
该运算符可以检查一个对象中是否含有特定的属性
“属性名” in 对象<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var obj = new Object();var obj2 = new Object();obj2[name] = "Tom";obj2[age] = "18";obj[test] = obj2;console.log("test" in obj);</script><title>测试</title></head><body></body></html>
基本和引用数据类型
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var a =123;console.log("a ="+a);var obj = new Object();//基本数据类型为栈内存obj[name]="Tom";var obj2 = obj;obj[name]="Jack";console.log(obj[name]);//引用数据类型为堆内存,本质指针console.log(obj2[name]);//引用数据与基本的区别 obj与obj2都变了obj2=null;console.log(obj[name]);//相当于obj2对地址的指针断开了console.log(obj2[name]);//obj还是object obj2为空var obj3 = new Object();var obj4 = new Object();obj3[name]="Tom";obj4[name]="Tom";console.log(obj3[name] == obj4[name]);//false 双胞胎 指的地址不同</script><title>测试</title></head><body></body></html>
对象字面量
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">var obj = {}; //相当于var obj = new Object();var obj2 = {name:"Tom",age:18};var obj3 = {name:"Tom",age:18test:{name:"Jack"}};</script><title>测试</title></head><body></body></html>
函数
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">//函数也是对象var fun = new Function("console.log(1);");fun();//执行fun.hello="Hello";//也具有对象的功能console.log(fun.hello);//使用函数声明function fun2(){console.log(1);console.log(2);console.log(3);}fun2();var fun3=function(){console.log(1);}fun3();</script><title>测试</title></head><body></body></html>
函数的参数
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">function sum(a,b){console.log(a+b);}sum(1,2);sum("1","hello");//调用函数是不会检查类型的sum(1,2,3);//调用函数是不会检查实参数量sum(1);//调用函数是不够那就是undefined</script><title>测试</title></head><body></body></html>
函数的返回值
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">function sum(a,b){var c =a+b;return c;}var result = sum(1,2);</script><title>测试</title></head><body></body></html>
return 直接结束整个函数
-
实参可以是任何值
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">function isOu(num){if(num%2==0){return true;}else{return flase;}}var result = isOu(2);//创建对象//实参可以是个对象var obj={name:"Tom",age:"18",gender:"男"function sayHello(obj){console.log("我是"+obj.name);};sayHello(obj);//实参可以是函数function fun(a){a(obj);}fun(sayHello);function fun2(){function fun3(){alert(1);}return fun3;}fun2()();//相当于fun3()//fun3 与 fun3()不同</script><title>测试</title></head><body></body></html>
立即调用
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">//函数对象()(function(){alert(1);})();</script><title>测试</title></head><body></body></html>
方法
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><script type="text/javascript">//对象的属性也可以是函数var obj = {};obj.name="Tom";obj.sayHello=function(){console.log(obj.name);};obj.sayHello();//调方法var obj2 = {name:"猪八戒",age: 18,sayName: function(){console. log(obj2.name);}};//枚举对象中的属性obj2. sayName();var obj3 = {name:"猪八戒",age: 18,gender:"男"};for(var n in obj){console.log(n);console.log(obj[n]);}//打印对象中的属性</script><title>测试</title></head><body></body></html>
