2021-07-08

本文详细解析了JavaScript中非Number类型运算、+运算符的特性、一元运算符的应用、自增自减操作,以及逻辑运算符(!, &&, ||)的规则实例。重点讲解了类型转换和短路逻辑的特点,适合初学者和进阶者学习。
摘要由CSDN通过智能技术生成

js的运算符

  • 当对非Number类型的值进行运算时,会将这些值转换为Number然后再运算
  • 任何值和NaN运算都是NaN

1.+:
任何值和NaN运算都是NaN
例:
result = 2 + NaN //NaN

多个字符串和数值相加按顺序进行运算
例:
result =1+2+“3” //33

result =“1”+2+3 //123

2.-:
-可以对两个值进行减法运算,并返回:
当对非Number类型的值进行运算时,会将这些值转换为Number然后再运算
例:
result = 100 - true //99

result = 100 - “1” //99

js的一元运算符

  • 一元运算符,只需要一个操作数
    b = 1 +“2” +3 //123
    //可以对一个其他的数据类型使用+,来将其转换为number
    b = 1 + +“2” +3 //6

js的自增和自减

  • let a = 1
    a++ //2
    ++a //2
    a = a++ //1
    a=++a //2

  • let result = d++ + ++d + d //64
    即:result = 20 + 22 + 22

  • 注:
    a是变量
    a++或者++a都是表达式,不论在哪,都会进行运算

                 let c = 10
      			 // 使c自增1
      			 //第一次c++在10的基础上自增
      			 document.write(c++)  //10
      			 document.write("<br />")
      			 //第二次c++在11的基础上自增
      			 c++
      			//第三次,c++在12的基础上自增
      			 document.write(c++)  //12
      			 document.write("<br />")
    

js的逻辑运算

/*
*JS中为我们提供了三种逻辑运算符
* ! 非
* - !可以用来对一个值进行非运算
* - 所谓非运算就是值对一个布尔值进行取反操作,
* true变false,false变true
* -如果对一个值进行两次取反,它不会变化
* -如果对非布尔值进行运算,则会将其转换为布尔值,然后再取反
* 所以我们可以利用这一特点,将其他数据类型转换为布尔值
* 可以为一个任意数据类型取两次反,来将其转换为布尔值
* 原理和Boolean()函数一样
*
*
* && 与
* - &&可以对符号两侧的值进行运算并返回结果
* - 运算规则
* -两个值中只要有一个值为false就返回false
* 只有两个值都为true时,才会返回true
* -JS中的“与”属于短路的与
* 如果第一个值为false,则不会看第二个值

*
* || 或
* - ||可以对符号两侧的值进行或运算并返回结果
* - 运算规则:
* - 两个值中只要有一个true,就返回true
* 如果两个值都为false,才返回false
* -**JS中的“与”属于短路的或
* 如果第一个值为true,则不会看第二个值

***
*
*/

  • 与运算:
    * - 如果第一个值为true,则必然返回第二个值
    * - 如果第一个值为false,则必然返回第一个值
    例:

      	// true&&true
      	// 与运算,如果两个值都为true,则返回后边的
      	let result = 1 && 2  //2
      	//与运算:如果两个值中有false,则返回靠前的false
      	// false && true
      	// result = 0 && 2  //0
      	//true && false
      	result = 2 && 0  //0
      	//false && false
      	result = NaN && 0 // NaN
      	result = 0 && NaN  //0
    
  • 或运算:
    * - 如果第一个值为true,则直接返回第一个值
    * - 如果第一个值为false,则必然返回第二个值

      例:
      //true||true
      	// 如果第一个值为true,则直接返回第一个值
      	result = 2||1  //2
      	result = 2||NaN  //2
      	result = 2||0  //2
      	result = -1||"你好"  //-1
      	// 如果第一个值为false,则直接返回第二个值
      	// result = NaN||1  //1
      	// result = NaN||0  //0
      	// result = ""||"HELLO"  //HELLO
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值