JavaScript算术运算符,一元运算符,比较运算符,逻辑运算符,三元运算符的学习

5 篇文章 0 订阅
5 篇文章 0 订阅

算术运算符

  • 算术运算符
         主要是+ (加)、- (减)、* (乘)、/ (除)、% (取余)等简单运算,以下借用操作系统中的node环境进行直接输出举例。

在这里插入图片描述

一元运算符

  • 递增递减操作符
         ++ 表示每次递增1, 表示每次递减1。常用于遍历操作,比如要遍历某个数组,求所有值的和,需要将数组中的每个值逐个取出叠加,每次取值的时候都需要将索引递增1。(输出结果在当行输出的//注释后)
//++  --  前置++  --  后置++  --
//递增1  递减1
var a = 15;
a++;   //a = a+1;
++a;    //a = a+1;
console.log(a);   //16

var b = 15;
var c = b++;
console.log(b,c);    //16  15
//前置,先++,再使用
var d = 15;
var e = ++d;
console.log(d,e);    //16  16

总结:(1)后置++,–,先使用a,后++,–。
(2)前置++,–,先++,–,再使用a。

  • 赋值运算符
         常用的有*=,/=,%=,+=,-= 。
var a = 5;
a += 5;      //a = a+5;
console.log(a);   //10
a -= 2;   //a = a-2;
console.log(a);   //8
a *= 10;   //a = a*10;
console.log(a);   //80
a /= 5;    //a = a/5;
console.log(a);   //16
a %= 3;    //a = a%3;
console.log(a);   //1
  • 一元运算符+
         相当于调用Number(),将其他数据类型转换为number类型 。

  • 一元运算符-
    (1)将一元减应用于数值时,数值会变成负数。
    (2)将一元减应用于非数值时,遵循与一元加操作符相同的规则,最后将得到的数值转化为负数。

//应用于数值时
console.log(+10);    //10
console.log(-10);    //-10
//应用于非数值时
var a = '123';
console.log(typeof a);   //string
//将字符串转换成number类型
var result = +a;     //123
console.log(result,typeof result);   //123  number
console.log(-a);    //-123

console.log(+'123');     //123
console.log(+'hello');   //NaN
console.log(+'123a');    //NaN
console.log(+'12.3');    //12.3
console.log(+'12.3.4');  //NaN
console.log(+'016');     //16   (不识别八进制,识别成十进制)
console.log(+'0xaa');    //170  (识别十六进制)
console.log(+' 123');    //123   
console.log(+'12 3');    //NaN   (可识别字符串最前面和最后面的空格,字符串内的空格不可识别)
console.log(+' 123 ');   //123
console.log(+'');        //0  (空字符串转成number是0)
console.log(+' ');       //0  (空格字符串转成number是0)

//将boolean使用+转换成number
console.log(+true);     //1
console.log(+false);    //0

console.log(+undefined);   //NaN
console.log(+null);        //0

总结:(1)’’,"",false,null等转换为number类型时,直接为0,undefined则转换成NaN,true则被转换成1。
(2)不识别八进制,直接识别成十进制。识别十六进制。
(3)可识别字符串最前面和最后面的空格,字符串内的空格不可识别。

比较运算符

     比较运算符有 =====!=!==<<=>>=等,且返回都是true/false
在这里插入图片描述

逻辑运算符

  • 逻辑非 ! / !!

     该操作符应用任何类型数值都返回一个【布尔值】。先将任意类型的数值转换为Boolean,然后取反。

var a = true;
//!a  取反  false
//!a  取反再取反  true
console.log(!a);    //false
console.log(!!a);   //true
//string-->boolean
console.log('----string-->boolean-------');
console.log(!!'hello');    //true
console.log(!!' ');        //false
console.log(!!'');         //false
//number-->boolean
console.log('------number-->boolean------');
console.log(!!1);         //true
console.log(!!2);         //true
console.log(!!0);         //false
console.log(!!NaN);       //false
console.log(!!Infinity);  //true

console.log('-------null-->boolean-  false'); 
console.log(!!null);         //false
console.log('-------undefined-->boolean-  false');   
console.log(!!undefined);         //false
  • 逻辑与&&

     逻辑与&&,有假则假。如果第一个数为假性值(’’,0,NaN,null,undefined,false),直接返回第一个数,否则返回第二个数。

console.log(""&&123);    //'' 空字符串
console.log(0&&null);    //0
console.log(123&&345);   //345
console.log(123&&undefined);  //undefined
console.log(!!(123&&undefined));  //false
console.log(!!123&&undefined);   //undefined
  • 逻辑或 ||

    逻辑或 || 短路运算符,有真则真,同假才假。如果第一个为真,直接返回第一个数,否则返回第二个数。

console.log(0||123);    //123
console.log(NaN||undefined);   //undefined
console.log(123||345);     //123
console.log(123||undefined);   //123
console.log(''||123);    //123

三元运算符

     三目运算符的书写格式为:表达式?值1:值2 。如果表达式成立,用值1,表达式不成立,则用值2。

console.log(3<5?1:2);  //1
console.log(3>5?1:2);  //2

var a =5
10<20?a++:a--;
console.log(a);  //6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值