1.js引入
<!DOCTYPE html> <html lang="cn"> <head> <meta charset="UTF-8"> <title>js引入</title> <style type="text/css"> .span1{ color: red;} </style> <!--外链式--> <!--<script src="./1.js"></script>--> </head> <body> <!-- dom == document object model 有属性 有方法 行内式引入 --> <p class="" id="" onclick="clickhandler()">123</p> <span>234</span> </body> <!-- 内部式 引入 建议引入时候在body之后,因为要等待所有dom元素标签加载完成后再去执行相应得js操作--> <script type="text/javascript"> // window.document.write() // document.write('有一首歌叫123') document.write('<span class="span1">233</span>'); // windows.console.log() console.log('我很好'); console.error('错误ss'); console.dir(window); console.clear(); var a = prompt('输入姓名'); console.log(a); function clickhandler(){ // 弹出警告框 /* 这是一个方式 一个很好得方法 */ window.alert(1); alert(1) } </script> </html> <!-- 总结: 引入js 三种方式; 行内式 内部式 外链式 做项目时:css js 一般使用外链式引入; javascript得输出方式: 1.document.write('有一首歌叫123') document.write('<span class="span1">233</span>'); window.document.write() 2.console.log('我很好'); console.error('错误'); console.clear(); windows.console.log() 3.alert(1); window.alert(1); 4.innerHTML/innerText ... 5.var a = prompt('输入姓名'); console.log(a); -->
2.变量的声明和定义
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>变量得声明和定义</title> </head> <body> </body> <script type="text/javascript"> // 变量得声明 //js 中代码得执行顺序 自上往下 //1.先声明在定义 var dog; // alert(dog); //undefined 未定义 dog='小黄'; // alert(dog) // alert(dog) // alert(dog) //2.声明立刻定义 var dog2='小红'; // alert(dog2); var $='aa'; alert($); //建议使用驼峰标识 来命名 var myHousePrice = '$1234'; /* 变量命名规范: 1.严格区分大小写 2.命名时名称可以出现字母、数字、下划线、$ ,但是不能数字开头,也不能纯数字,不能包含关键字和保留字。 关键字:var number等 除了关键字 top name 也尽量不使用。 3.推荐驼峰命名法:有多个有意义的单词组成名称的时候,第一个单词的首字母小写,其余的单词首字母大写 4.匈牙利命名:就是根据数据类型单词的的首字符作为前缀 */ </script> </html>
3.五种基本数据类型
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>基本数据类型</title> </head> <body> <script type="text/javascript"> /* js中有两种数据类型 1.基本数据类型 number string boolean null undefined 2.引用数据类型 对象 Array object 正则 函数 */ //1.number 数字类型 var a = 123; console.log(a); console.log(typeof a); //2.string 字符串类型 var str = '123'; console.log(str); console.log(typeof str); //3.boolean 布尔类型 var b1 = false; //true/false console.log(b1); console.log(typeof b1); //4.null var c1 = null; //空对象 console.log(c1); console.log(typeof c1); //5.undefined var d1; console.log(d1); console.log(typeof d1); //特殊:分母为0; // Infinity // number var e1 = 5/0; console.log(e1); console.log(typeof e1); </script> </body> </html>
4.运算符
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>运算符</title> </head> <body> <script type="text/javascript"> //1.赋值运算符 // var money = prompt('请输入金额...'); // var saveMoney = money * (1+0.02); // console.log(saveMoney); //2.算数运算 var a = 10; var b = 3; var sum = a + b; var min = a - b; var t1 = a * b; var t2 = a / b; var t3 = a % b; // 余数 console.log(sum,min,t1,t2,t3); // 13 7 30 3.3333333333333335 1 //3.复合运算符 var c = 7, d = 8; // d = c + d; d += c; console.log(c,d); // 7 15 // 自增 自减 var e1 = d++; //先赋值后+++ var e2 = ++d; //先++后赋值 console.log(e1,e2); var f1 = d--; var f2 = --d; console.log(f1,f2); //4.比较运算符 > < >= <= == === != console.log(5>6); //false console.log(4==4); //true console.log(4==5); //false // 隐式转换 浏览器会将数值转成字符串; === 类型和值都比较 console.log('5'==5); // true console.log('5'===5); // false console.log(4!=3) // true //5.逻辑运算符 &&(and) ||(or) console.log('xxx:',false && false) // console.log(true && true) console.log(true || false) // true </script> </body> </html>
5.字符串处理
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>字符串处理</title> </head> <body> <script type="text/javascript"> //字符串运算 var firstName = 'alice'; var lastNmae = 'B'; var fullName = firstName + " " + lastNmae; console.log(fullName); // 字符串拼接 //字符串拼接 var str1 = '飞行员'; var str2 = '航空公司'; var str = '该法院受理的'+str1+'离职纠纷案件中,'+str2+'要求离职飞行'; console.log(str); // 对字符串 + 是拼接 其他得运算可以 - * / var a1='1'; var a2='2'; console.log(a1+a2); // 12 拼接 不是数值 console.log(typeof(a1+a2)); // string console.log(parseInt(a1)+parseInt(a2)); // 3 console.log(a1*a2); // 2 console.log(typeof (a1*a2)); //number var b1 = 'one'; var b2 = 'two'; console.log(b1*b2); // NaN == not a number console.log(typeof (b1*b2)) // number </script> </body> </html>
6.数据类型转换
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>数据类型转换</title> </head> <body> <script type="text/javascript"> //1.将数字类型转换成字符串类型 隐式转换 String() num.toString() var n1 = 123; var n2 = '123'; var n3 = n1+n2; // 123 隐式转换 将数字转换成 string 进行拼接 console.log(n3); // 123123 console.log(typeof n3) // string //强制类型转换 String() toString() console.log(':',typeof n1) var str1 = String(n1) console.log(str1); console.log(typeof str1) var num = 234; console.log(num.toString()) //2.将 字符串 类型转换成 数字 类型 Number() parseInt() parseFloat() var stringNum = '789.123as'; var num2 = Number(stringNum); console.log(num2) console.log(typeof num2); // parseInt() 解析一个字符串 并且返回一个整数 console.log(parseInt(stringNum)); console.log(typeof parseInt(stringNum)); console.log(parseFloat(stringNum)) console.log(typeof parseFloat(stringNum)) //number // 在js中所有得数据类型 都会被转换为boolean类型 // 0 NaN null undefined 为false 其他得为true var b1 = '123'; var b2 = -123; var b3 = Infinity; //无穷大 var b4 = 0; var b5 = NaN; var b6; //undefined var b7 = null; console.log(':',Boolean(b1)) //true console.log(Boolean(b2)) // true console.log(Boolean(b3)) // true console.log(Boolean(b4)) // false console.log(Boolean(b5)) // false console.log(Boolean(b6)) // false console.log(Boolean(b7)) // false </script> </body> </html>
7.if
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>if</title> </head> <body> <script type="text/javascript"> //if 语句 var ji = 10; if(ji>=20){ console.log('大吉大利') }else{ console.log('下次努力') } if(true){ }else if(true){ }else if(true){ }else{ } // alert(222) // 浏览器解析代码得顺序 是 从上往下 执行 // 考试系统录入 var math = 90; var english = 85; var sum = 485; //1.模拟 总分 > 400 并且(&&两个条件都成立才成立)数学 > 89 被清华录入 if(sum>400 && math>90){ console.log('录入成功') }else{ alert('高考失利') } //2.模拟 总分>400或者(|| 只要有一个成立就成立)英语>85 就被复旦录入 if(sum>500 || english>85){ alert('录入') }else{ alert('失利') } if(sum>500 || (math+english)>170){ alert(22) } </script> </body> </html>
8.switch
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>switch</title> </head> <body> <script type="text/javascript"> //switch var gameScore = 'good'; // case 表示一个条件 满足条件走进去 遇到break 跳出 switch(gameScore){ case 'good': console.log('good 玩得很好'); break; // 一定要加 break 否则会打印 better 下得内容 case 'better': console.log('better 很好'); break; case 'best': console.log('best'); break; default: console.log('很遗憾'); // break; // 不需要些 走到最后了 } // alert(11) </script> </body> </html>
9.while
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>while</title> </head> <body> <script type="text/javascript"> // while 循环 //1.初始化循环变量 2.判断循环条件 3.更新循环变量 var i = 1; while(i<=9){ // console.log(i); i+=1; } //练习 // 1-100 之间 是3得倍数 输出出来 var j = 1; while(j<=100){ if(j%3===0){ console.log(j) } j++; } </script> </body> </html>
10.do while
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>do_while</title> </head> <body> <script type="text/javascript"> // do while //1.初始化循环变量 2.判断循环条件 3.更新循环变量 // 不管有没有满足while,do里面得代码都会执行一次 var i = 3; do{ console.log(i); i++; }while(i<5); </script> </body> </html>
11.for
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>for</title> </head> <body> <script type="text/javascript"> //for 循环 //1.初始化 2.循环条件 3.更新循环变量 // for(var i = 1; i < 10; i++){ // console.log(i); // } //1-100 偶数 // for(var i=1;i<=100;i++){ // if(i%2===0){ // //偶数 // console.log(i) // } // } //1.练习 //1-100之间所有数得和 // var sum = 0; // for(var i=1;i<=100;i++){ // sum += i; // } // console.log(sum) //2.练习 /* ****** ****** ****** */ // 双重for 循环 // for(var i=1;i<=3;i++){ // 行 // for(var j=1;j<=6;j++){ //列 // document.write('*') // } // document.write('<br>') // } //作业: 在浏览器中输出直角三角形 6行 等边三角形 使用python 和js 语言输出 /* * * * * * * * * * * * * * * * * * * * * * */ for(var i=1;i<=6;i++){ for(var j=1;j<=i;j++){ document.write('*') } document.write('<br>') } document.write('<br><br>'); /* * 2*1-1 *** 2*2-1 ***** 2*3-1 ******* 2*4-1 ********* 2*5-1 *********** 2*6-1 */ /* * 2*1-1 *** 2*2-1 ***** 2*3-1 ******* 2*4-1 ********* 2*5-1 *********** 2*6-1 ********* ******* ***** *** * */ //等边三角形 for(var m=1;m<=6;m++){ for(var n1=m;n1<6;n1++){ document.write(' ') } for(var n2=1;n2<=2*m-1;n2++){ document.write('*') } document.write('<br>') } document.write('<br>'); //菱形 for(var a=1;a<=11;a++){ if(a<=6) { for (var a1 = a; a1 < 6; a1++) { document.write(' ') } }else{ for(var a2=7;a2<=a; a2++){ document.write(' ') } } if(a<=6){ for(var a3=1;a3<=2*a-1;a3++){ document.write('*') } }else{ for(var a4=a*2-1;a4<22;a4++){ document.write('*') } } document.write('<br>') } </script> </body> </html>