JS的运算符(下)

一、逻辑运算符

1.逻辑运算符的种类

         逻辑运算符一般用于布尔值的判断

(1)! 非

        非就是讲boolean值反过来

!true //false
!false //true

(2)&& 与

        与则是两者都为true时才为true,反之都为false,即

true&&true //true
true&&false //false 
false&&true //false 
false&&false //false

(3) || 或

        或只要有一方为true,都是true,反之则为false,即

true&&true //true
true&&false //true
false&&true //true
false&&false //false

注意:

        当&& 、||为非布尔值时的运算:将非布尔值转换为布尔值,在进行运算,并返回原值。

        (1)与运算中,如果第一个值为true,则必然返回第二个值,如果第一个值为false,则返回靠前的false,如果两个值中有false,则返回靠前的false值。

var result=5&&6;//6
result =0&&2;//0

        (2)或运算中,如果第一个值为true,则必然返回第一个值,如果第一个值为false,则返回第二个值。

result =0&&NaN;//NaN

二、赋值运算符

        赋值运算符即是将符号右侧的值赋值给符号左侧的变量。

        a+=5等价于a=a+5,而其他运算符都大同小异,只是将加号换成其他运算符。

三、关系运算符

        关系运算符可以比较两个值之间的大小关系,成立返回true,不成立返回false,关系运算符即 <,>,=。

        注意:对于非数值进行比较时,会将其转换为数字然后在比较,

        如果符号两侧的值都是字符串时,不会将其转换为数字进行比较,而会分别比较字符串中字符的Unicode编码,详细的Unicode编码,请自行百度查询。

console.log('a'<'b');//true

        a的编码为97,b的为98,因此返回为true。

        比较字符编码时是一位一位进行比较,如果两位一样,则比较下一位,所以借用它来对英文进行排序。

console.log('abc'<'bcd');//true

        字符串比较是根据ASCII码,若是比较两个字符串类型的数字,需将字符串转换为数字,否则比对结果可能会不正确。

console.log('88'>'232');//true

        任何值和NaN做比较都是false。

console.log(10<="hello");//false

 四、转换Unicode编码

        在字符串中使用转义字符输入Unicode编码,具体使用为“\u四位编码”

console.log("\u2620");

        "\u2620"是一个骷髅头字符

        在网页中使用Unicode编码,具体为“&#编码”,这里的编码需要的是10进制

<h1 style="font-size: 200px;">&#9760;</h1>

        输出的具体字符如下图 

五、相等运算符

        相等运算符用来比较两个值是否相等,如果相等会返回true,否则返回false。

(1)==

        当使用==来比较两个值时,如果值的类型不同,则会自动进行类型转换,将其转换为相同的类型,然后比较

 

console.log("1"==1);//true
console.log(true=="1");//true 转成number
console.log(null==0);//false 特殊情况  没有转

        undefined和null与其他数在进行相等判断时不进行类型转换。

(2)!=

        不相等用来判断两个值是否不相等,如果不相等返回true,否则返回false,不相等也会对变量进行自动的类型转换,如果转换后相等它也会返回false。

(3)===

        用来判断两个值是否全等,它和相等类似,不同的是它不会做自动的类型转换,如果两个值的类型不同,会直接返回false

(4)!==

        用来判断两个值是否不全等,它和不等类似,不同的是它不会做自动的类型转换,如果两个值的类型不同,直接返回true

注意:

        NaN不和任何值相等,包括他本身,如果需要判断一个值是否是NaN,可通过isNaN()函数来判断,如果该值是NaN则返回true,否则返回false。

六、三元运算符

        三元运算符也叫条件运算符,语法:条件表达式?语句1:语句2;

        执行流程:1.首先对条件表达式进行求值,

                          2.如果该值为true,则执行语句1,并返回执行结果

                          3.如果该值为false,则执行语句2,并返回执行结果

        如果条件表达式的求值结果是一个非布尔值,会将其转换为布尔值然后在运算

var a=10;
var b=20;
var c=50;
a>b?alert('a大'):alert("b大");

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值