花钱做网站需要所有权,烟台做网站要多少钱,wordpress著名插件,百度排名竞价2.运算符与逻辑分支
持续更新中…
运算符
1.进制转换
.toString() 10进制转换为其他进制
parseInt() 其他进制转换为10进制
进制: 二进制: 0, 1 (0~1) 八进制: 0, 1, 2, 3, 4, 5, 6, 7 (0~7) 十进制: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (0~9) 十六进制: 0, 1, 2, 3, 4, 5, 6,…2.运算符与逻辑分支
持续更新中…
运算符
1.进制转换
.toString() 10进制转换为其他进制
parseInt() 其他进制转换为10进制
进制: 二进制: 0, 1 (0~1) 八进制: 0, 1, 2, 3, 4, 5, 6, 7 (0~7) 十进制: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (0~9) 十六进制: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (0~15) // .toString() 10进制转换为其他进制// parseInt() 其他进制转换为10进制// 1100var num 1100;var res parseInt(num, 2);console.log(res);//12var num2 10111;var res1 parseInt(num2, 2);//其中的2 代表这是二进制console.log(res1); //23// 扩展练习// 1. 将这些二进制1100 , 10111转成八进制、十进制、十六进制console.log(parseInt(1100, 2));//转换为10进制console.log(parseInt(1100, 2).toString(8));//8进制,先转为10进制,再用10进制的数转换为8进制console.log(parseInt(1100, 2).toString(16));//16进制console.log(parseInt(10111, 2));//转换为10进制console.log(parseInt(10111, 2).toString(8));//8进制,toString()括号里面跟的数字 ,就是进制,比如是8,就是8进制,是16就是16进制console.log(parseInt(10111, 2).toString(16));//16进制// 2. 将下列10进制数转成二进制// 193 , 49 , 81 , 35var a 193;var b 49;var c 81;var d 35;console.log(a.toString(2));console.log(b.toString(2));console.log(c.toString(2));console.log(d.toString(2));// 3. 将下列二进制数转成十进制数// 100001001// 11001101console.log(parseInt(100001001, 2));console.log(parseInt(11001101, 2));2.数学运算符
1. 只有符号两边都是数字的时候才会进行加法运算 只要符号任意一边是字符串类型就会进行字符串拼接 2.- 会执行减法运算 会自动把两边都转换成数字进行运算 3.* 会执行乘法运算 会自动把两边都转换成数字进行运算 4./ 会执行除法运算 会自动把两边都转换成数字进行运算 5.% 会执行取余运算 会自动把两边都转换成数字进行运算 % 取值范围 Math,random()生成0-1之间的值,包含0 不包含1 // % 5 的取值范围是0~4// % 10 的取值范围是0~9// % 100 的取值范围是0~99console.log(parseInt(Math.random() * 10) % 5);3.赋值运算符
1. 就是把右边的赋值给等号左边的变量名 var num 100
就是把100赋值给num变量
那么num变量的值就是1002.
var a 10;
a10;
console.log(a);//20
a10等价于aa103.-
var a 10;
a-10;
console.log(a);//0
a-10等价于aa-104.*
var a10;
a*10;
console.log(a);//100
a*10等价于aa*105./
var a10;
a/10;
console.log(a);//1
a/10等价于aa/106.%
var a10;
a%10;
console.log(a);//0
a%10等价于aa%104.逻辑运算符 与(需要满足两个条件) 短路运算符 我只找假的,找到假的,就不往后面执行了 // 2. 与 短路运算// 我只找假的,找到假的,就不往后面执行了true false num;// 代码执行,因为看到了false 就不会执行后面的num了,num就不会报错console.log(1111);|| 或(满足一个条件即可) 短路运算符 || 或 只找真,找到真的就不往后面执行 console.log(你好美);// 上面和下面两句话都执行,因为|| 找到true 就不看后面的代码了true || num;console.log(你好帅);! 取反 console.log(!true);//falseconsole.log(true true);//trueconsole.log(true false);//falseconsole.log(true || true);//trueconsole.log(true || false);//falseconsole.log(false || false);//falseconsole.log(!true);//falsevar num1 1 2;//0和NaN为false,非0为truevar num2 true || false;var res num1 * num2 3;document.write(res)5.关系运算符
, , ,, , , !, !
看到NaN参与比较,就是false
比较运算符的规则(牢记)
1.数值与数值比较,直接比较大小
2.数值与字符串比较,字符串转换成数字,再比较大小
3.字符与字符比较,把字符转换成ASCII码,再比较大小
ASCII码 记住这些经典的
a-z 97-122
A-Z 65-90
0-9 48-57 // 65 66console.log(A B);//falseconsole.log(你好 2);//falseconsole.log(3 2);//true// 9是 57 ,11是 49 49 ,比较第一个数,所以是9大console.log(9 11);//true6.一元运算符
a(先运算,后赋值) a (先赋值,后运算)
只能操作一个值的运算符叫做一元运算符 var a b; // 先运算,后赋值 var a b; // 先取值,后运算
其他类型应用一元运算符的规则 var b ‘89’; b; //90,数值字符自动转换成数值
var b ‘ab’; b; //NaN,字符串包含非数值转成NaN
var b false; b; //1,false转成数值0,累加就是1
var b 2.3; b; //3.3,直接加1 var a 10;var res a a a;console.log(a);//13console.log(res);//33var b 10;var res1 b b b b;console.log(b);//14console.log(res1);//48var i 12;var sum i i i * 2 i-- i--;console.log(sum i);// 85 137.三目运算符
语法:
表达式?条件1 : 条件2;
表达式满足条件就走条件1,否则就走条件2 var num 10;var res num 5 ? 大于5 : 小于5;console.log(res);//大于58.位移运算符
(右位移)(左位移)
进制的左移相当于乘以2右移相当于除以2
22 等于0
22 等于8
2 2 把第一个2,转换为2进制,再向左边或者右边移动n位,n:就是第二个数
9. , ,代表的意思 赋值 把右边的值给到左边 比较 只比较值,类型会自动进行转换 值和类型,都要相同,才会全等于(恒等于)
逻辑分支
1.单分支 单分支语法:if(表达式){逻辑代码}var a 10;console.log(11111);// 1020,不满足条件,所以不执行里面的代码if (a 20) {console.log(条件满足,我被执行,条件不满足,我就不被执行);}console.log(222222);2.双分支 表达式1 算术表达式 逻辑表达式 关系表达式 常量....语法:if(表达式1){逻辑代码1}else{逻辑代码2}// 双分支var str prompt(请输入开和关:);if (str 开) {console.log(电灯打开了);} else {console.log(电灯被关闭了,没有被打开);}3.多分支
多分支的语法: if(表达式1){逻辑代码}else if(){逻辑代码}else if(){逻辑代码}else{逻辑代码}// 一周7天var day prompt(请输入星期几的数字?);if (day 1) {console.log(星期1);} else if (day 2) {console.log(星期2);} else if (day 3) {console.log(星期3);} else if (day 4) {console.log(星期4);} else if (day 5) {console.log(星期5);} else if (day 6) {console.log(星期6);} else {console.log(星期天);}4.Switch
1.防止穿透 break 2.恒等于(),值和类型要一致 语法:Switch(){case 常量1:逻辑代码1break;case 常量2:逻辑代码2break;default:逻辑代码3break;var grade (prompt(请输入分数));var a parseInt(grade / 10);switch (a) {case 10:case 9:case 8:console.log(A);break;case 7:console.log(B);break;case 6:console.log(C);break;default:console.log(D);break;}