zl程序教程

您现在的位置是:首页 >  Javascript

当前栏目

JavaScript运算符操作

2023-02-18 16:38:30 时间

运算符

算术运算符

  • 加法
  • 减法
  • 乘法 / 除法 % 取余 判断奇偶数, 判断是否整除

var x = 5; var y = 10; console.log(x + y); // 15 console.log(x * y); // 50 console.log(x / y); // 0.5 console.log(x % y); // 5 // 0不能除数 console.log(x / 0); // Infinity console.log(x % 0); // NaN

一元运算符

++ 自加 就是在自身基础上加1 例如 var a = 1; a = a+1; a+=1; a++; //后置++ , 先输出,再计算 ++a; //前置++ , 先计算,再输出 //以上四种写法都是加1操作 //就是一个加1问题,要么加1, 要么不加1.不用纠结. – 自减 就是在自身基础上减1

关系运算符

大于 < 小于 = 大于等于 <= 小于等于 == 等于 === 全等于 != 不等于 !== 不等于 // 与=的区别:==只进行值得比较,===类型和值同时相等,则相等 var result = ‘55’ == 55; // true var result = ‘55’ === 55; // false 值相等,类型不相等 var result = 55 === 55; // true

注意: 一个等于号表示赋值, 已经被编程语言占用了,所以才用两个等于号表示相等.

逻辑运算符

&& 与运算符 表示并且,多个条件必须 || 或运算符 表示或者,满足其一即可 ! 非运算符 表示取反,类似于非也这句话(购物车中的反选功能) 找工作的条件: 必须满18岁,并且工作经验三年以上 找工作的条件: 必须满18岁,或者工作经验三年

赋值运算符

JS中由于一个等于号被用来进行赋值, 也就是存数据,所以表示判断的等于最少两个等号. var num = 0; num += 5; //相当于 num = num + 5; num -= 5; //相当于 num = num - 5; num *= 5; //相当于 num = num * 5; num /= 5; //相当于 num = num / 5; num %= 5; //相当于 num = num % 5;

运算符优先级

优先级从高到底 () 优先级最高 一元运算符 ++ – ! 算数运算符 先* / % 后 + - 关系运算符 > >= < <= 相等运算符 == != === !== 逻辑运算符 先&& 后|| 赋值运算符 //这些东西想记也记不住的,但是你得知道括号里面的先算就好了, &&和||后算

流程控制语句

流程控制语句,可以让代码有选择性的执行。例如登录成功,跳转到首页,登录失败 提示用户继续输入。

单向条件判断(if)

//如果明天不下雨, 我就去游乐场
//不下雨是条件, 当条件满足时执行,去游乐场
if(条件满足){
    //条件满足时执行
}

双向条件判断(if-else)

//如果明天不下雨,我就去游乐场,否则,我就在家呆着
if(条件满足){
    //条件满足时执行
}else{
    //条件不满足时执行
}

多向条件判断(if-else if- else)

//如果你考试得分超过90分 奖励你100块,如果你考试得80分奖励你50块,否则你就得在家补课.
if(条件1满足){
    //执行事情1
}else if(条件2满足){
    //执行事情2
}else{
    //执行最后的结果
}

三元运算符

//三元运算符是双向判断的一个简写方式,因为这个工作中最常用
条件 ? 条件满足执行 : 条件不满足执行;
 // 判断一个年龄是否成年, 当年龄超过18 返回  成年  否则返回未成年
   var age = 19; 
   var msg = age >= 18 ? '成年' : '未成年';
   console.log(msg);

精准判断(switch)

 //switch语句更适合判断一个固定的值;
 switch (expression) {
   case 常量1:
     语句;
     break;
   case 常量2:
     语句;
     break;
   ....
   case 常量n:
     语句;
     break;
   default:  // 默认语句 即 上面的条件都不成立的时候执行默认语句
     语句;
     break;
 }
  • break可以省略,如果省略,代码会继续执行下一个case
  • switch 语句在比较值时使用的是全等(===)操作符, 因此不会发生类型转换(例如,字符串’10’ 不等于数值 10)

对比if/elseif条件可以是范围也可以是具体值,但是switch是具体值判断,不能范围判断