Javascript系列文章目录二

本文详细介绍了JavaScript中的算数运算符,包括加法、减法、乘法、除法和取模。还讨论了一元运算符,如正负号转换,以及自增自减的用法。此外,还讲解了逻辑运算符,如非、与、或的逻辑转换规则,以及赋值运算符的使用。关系运算符和相等运算符的部分也有所涉及,包括Unicode编码表的相关知识。
摘要由CSDN通过智能技术生成



算数运算符

当对非number的值运算会当成number运算
任何值和NaN运算都是NaN

+加法

  1. 如果对字符串加法等于拼串
  2. 故任意数据类型+一个“” 变成字符串
var c = 123;
c = c + ""
//c就会变成String 

result = 1 + 2 + "3";
result = "1 " + 2 + 3;
//上面两个运算前后的区别,导致结果不同

-减法

  1. 可以对两个值做减法,并将结果返回

*乘法
/除法

除了加法的情况,其他都会把其他类型转换成number

d = d - 0;

/*可以利用以上特点,做一个隐式的类型转换
可以通过-0 *1  /1的方式转换为number

%取模 求余数

一元运算符

只需要一个操作数
“+”正号 不会对数字产生任何影响
”- “ 负号 可以对数字符号取反,同数学
对非number的类型的值
它会转换为number再运算
故可以使用+ 将其转换为number

var = 1 + "2" + 3;
var2 = 1 + +"2" + 3;
//上一个是字符串相加
//后一种时数值运算

自增和自减

自增++

*通过自增可使变量自身的基础上增加1
*一个变量自增后,原变量的值会自增1
*自增的两种情况:a++ ++a 两种都会使原变量自增1
a++的值等于原变量的值
++a的值等于新的值

自减–

*通过自增可使变量自身的基础上减1
*一个变量自减后,原变量的值会自减1
*自增的两种情况:a-- --a 两种都会使原变量自减1
a–的值等于原变量的值
–a的值等于新的值

		var n1 = 10, n2 = 20;
        var n = n1++;
        console.log('n='+n);
        console.log('n1='+n1)
        //n1的值已自增成11
        n = ++n1;
        console.log('n='+n);
        console.log('n1='+n1);
        //n1 n都变成12
		//自减
        n = n2--;
        console.log('n='+n);
        console.log('n2='+n2);
        //n2 = 19
        n = --n2;
        console.log('n='+n);
        console.log('n2='+n2);

逻辑运算符

有三种:非 与 或
在进行逻辑操作时如果操作数不是布尔类型则会将其转换
布尔类型在进行计算。
非使用符号 ! 表示,与使用 && 表示,或使用 || 表示

非 ! 表示

!非运算符可以应用于任意值,无论值是什么类型,这个运
算符都会返回一个布尔值。
非运算符会对原值取反,比如原值是true使用非运算符会
返回false,原值为false使用非运算符会返回true。
如果对一个数值两次取反,它不会有变化
故可以这个方法将任意数据转为布尔值,同Boolean()函数一样

var a = "time"
b = !!a;

与 &&

• 与运算符可以应用于任何数据类型,且不一定返回布尔
值。
• 对于非布尔值运算,会先将非布尔值转换为布尔值。
• 对布尔值做运算时,如果两个值都为true则返回true,
否则返回false。
• 非布尔值时:如果两个都为true,则返回第二个值,如
果两个值中有false则返回靠前的false的值。

或 ||

• 或运算符可以应用于任何数据类型,且不一定返回布尔值。
• 对于非布尔值运算,会先将非布尔值转换为布尔值。
• 对布尔值进行运算时,如果两个值都为false则返回false,
否则返回true。
• 非布尔值时:如果两个都为false ,则返回第二个值,否
则返回靠前true的值

非布尔值的与或运算

会转化为布尔值再运算,再返回原值
如果两个值都为true,返回后面的值
如果有false 返回靠前的false的值

如果第一个为true,返回第一个值
如果第一个false,直接返回后面的值

赋值运算符

+= a+=5等于a = a + 5
-= a-=5等于a = a - 5
= a=5等于a = a * 5
/= a/=5等于a = a / 5

关系运算符

> < >= <=

非数值情况

  1. 会将其转换为数字 然后比较
  2. 任何值和NaN比较都是false
  3. 比较字符串时,比的时字符串编码大小,而且时一位一位进行比较,以此类推
    用于英文排序
  4. 比较字符串时转型成字符串(+”a“)

Unicode编码表

具体可差编码对应的表
Javascript 中\u编码来转义编码
网页中用&#编码,需要10进制

相等运算符、不相等运算符

相等运算符

比较两个值是否相等 ==
当使用== 比较时,类型不同会自动转换一致

console.log("1" = 1); //true

null 和undefined判断相等会返回true
NaN不和任何值相等,包括它本身

console.log(NaN == NaN)// flase

//判断NaN  是会返回true
console.log(isNaN(a))

不相等运算符

也会进行 类型不同会自动转换

全等运算符

===不做类型转换

不全等运算符

!== 也不做类型转换

条件运算符(三元)

语法:
	条件表达式?语句1:语句2var a = 44, b = 90, c = 77;
var max = a > b ? a:b;
max = max > c ? max: c;
// 不利维护var max = a > b ?(a > c ? a : c):(b > c ? b : c)
console.log(max)

运算符的优先级

查表,用()查询等级高低

乘法、除法、余数运算优先级高于加法和减法
有限排序

总结:运算符的运用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值