############### JS运算符 ################
/* 算数运算符:
1,加减乘除, + - * /
注意1,对于非数字的运算,都会转换为数字进行运算
比如:var a = true + true ----结果是2,
注意2,两个字符串相加,是拼串,
var a = "123"+"456" ----"123456"
注意3,任何值和Nan做运算,都是Nan
注意4,任何值和字符串做加法运算,都会把非字符串转换为字符串,做拼串的操作,
var a= 123+"1" ---结果:1231
上面只是加法,
对于减法,是都转换成为数字的,
2,取余,+1,-1,
% ++ -- var n =10; n++ //11,就是n=n+1,不需要赋值,
################################ 比较运算符 > >= < <= != == === !== 注意: 1 == “1” // true 这是弱等于,只判断值 1 === "1" // false 这是强等于,既判断值也判断类型 ################################ 逻辑运算符 && 与 || 或 ! 非 ################################ 赋值运算符 = += //n+=1 就是 n= n+1 -= *= /= * */
位运算符
运算符 名称 描述
& AND 如果两位都是 1 则设置每位为 1
| OR 如果两位之一为 1 则设置每位为 1
^ XOR 如果两位只有一位为 1 则设置每位为 1
~ NOT 反转所有位
<< 零填充左位移 通过从右推入零向左位移,并使最左边的位脱落。
>> 有符号右位移 通过从左推入最左位的拷贝来向右位移,并使最右边的位脱落。
>>> 零填充右位移 通过从左推入零来向右位移,并使最右边的位脱落。
这个位运算符,是加密里面很常见的,
############### JS流程控制语句 ################
if语句
if (条件) { 如果条件为 true 时执行的代码 } if (hour < 18) { greeting = "Good day"; } if (条件) { 条件为 true 时执行的代码块 } else { 条件为 false 时执行的代码块 } if (hour < 18) { greeting = "Good day"; } else { greeting = "Good evening"; } if (条件 1) { 条件 1 为 true 时执行的代码块 } else if (条件 2) { 条件 1 为 false 而条件 2 为 true 时执行的代码块 } else { 条件 1 和条件 2 同时为 false 时执行的代码块 } if (time < 10) { greeting = "Good morning"; } else if (time < 18) { greeting = "Good day"; } else { greeting = "Good evening"; }
###
###
Switch语句
switch(表达式) { case n: 代码块 break; case n: 代码块 break; default: 默认代码块 } switch (new Date().getDay()) { case 0: day = "星期天"; break; case 1: day = "星期一"; break; case 2: day = "星期二"; break; case 3: day = "星期三"; break; case 4: day = "星期四"; break; case 5: day = "星期五"; break; case 6: day = "星期六"; }
###
for循环
// for循环 // a1 = [1,2,3] // for (var i =0;i<a1.length;i++){ // console.log(a1[i]) // } JavaScript for/in 语句遍历对象的属性 var person = {fname:"Bill", lname:"Gates", age:62}; var text = ""; var x; for (x in person) { text += person[x]; }
###
while循环
//while 循环 // var i = 0; // while (i < 10) { // console.log(i); // i++; // }
###
三元表达式,
不常用,很少用,因为不好理解,但是混淆里面用的多
var a = 1;
var b = 2;
var c = a > b ? a : b;
//? 号前面是条件,成立就是第一个a,不成立就是第二个b
这种还简单,但是一层套一层的三元表达式这个就很不容易理解了,
var c = a > b ? a : a>1 ? 2 :a>-5 ? 3 : 4
这种就很难理解了,
####
####