运算符

本文详细介绍了JavaScript中的各类运算符,包括算术运算符、关系运算符、逻辑运算符及条件运算符等,并通过实例展示了它们的用法和优先级。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

运算符

一、运算符可分为:

  1. 算术运算符
  2. 关系运算符
  3. 逻辑运算符
  4. 条件运算符

二、根据操作数不同可分为:

  1. 一元运算符
  2. 二元运算符
  3. 三元运算符

算术运算符

算术运算符: + - * / %

<script type="text/javascript">
var a=3+5;
console.log(a);//8

这是一个字面量,可以直接输出结果:

console.log(3-5);//直接输出表达式的结果 -2
console.log(3%5);//取余 

字符串的拼接:
字符串执行 + 时,执行拼接操作,结果是string类型
数字型字符串才能执行算术运算( + - * / %)

var a='你好';
var b='大世界';
console.log(a+b);//拼接 你好大世界

数字型字符串才能够进行够执行算术运(+ - * / %),其他无意义

var a='3';
var b='5';
console.log(a+b);//35
console.log(a*b);//15
console.log(b%a);//2

若“+”两边有一个字符串类型,则实行拼接运算
布尔类型,在参与数学运算时,true是1,false是0
如:

var a=10;
var b='你好';
var c='9';
var d=true;
console.log(a+b);//10你好
condole.log(a+c);//109
console.log(b+d);//11
console.log(c-d);//8
console.log(c+d);//9true

空字符串:

var str='';

空格字符串:

var str=' ';

一元运算符

一元运算符:自增++、自减–
运算符前置:++a、–a
运算符后置:a++、a–
当涉及其他操作符时,运算符前置跟后置效果一样
如:
后置

 var a=10;
 a++;
 console.log(a);//11

前置

 var a=10;
 ++a;
 console.log(a);//11

再如:

 var a=10;
 ++a;
 a--;
 console.log(a);//10

对于变量自身前置后置都一样
若出现赋值语句中,前置运算符(++a),先运算,后赋值
前置运算符(a++),先赋值,后运算
如:
后置:

var a=5;
var b=a++;
console.log(a,b)//a为6,b为5

前置:

var a=5;
var b=++a;
console.log(a,b)//a为6,b为6var

如:

var a=3,b=5
var c=(a++)+(--b)+(a+b);
console.log(a,b,c)//4 4 15

如:

var a=2,b=6
var c=(a++)+(++b)+(a--)+(a+b)+b;
console.log(a,b,c)//2 7   2+7+3+(2+7)+7=28

isNaN()

isNaN() 函数用于检查其参数是否是非数字值。
语法:

isNaN(x)

x: 必需。要检测的值。
如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false。
NAN:用于判断是否为数字
isNaN() 函数可用于判断其参数是否是 NaN,该值表示一个非法的数字(比如被 0 除后得到的结果)。
如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。正因为如此,isNaN() 函数是必需的。
如:

<script>
document.write(isNaN(123));//false
document.write(isNaN(-1.23));//false
document.write(isNaN(5-2));//false
document.write(isNaN(0));//false
document.write(isNaN("Hello"));//true
document.write(isNaN("2005/12/12"));//true
</script>

关系运算符

关系运算符又叫比较运算符,二元运算符
关系运算符运算结果为:布尔类型 :true false

二元运算符

二元运算符:>、 < 、 <= 、>=、、!=、===

全等===:既比较数值,又比较数据类型
==:只计较数值
如:

var a='5';
var b=3;
console.log(a>b);//true
console.log(a==5);//true
console.log(a===5);//false

“==” "!="可以判断数值型,也可以比较字符串,比较的是两者是否一致
如:

console.log(5==5);//true

console.log('我'=='你');//false

console.log('me'=='me');//true

特殊的:

console.log(undefined==null);//true
console.log(typeof NaN);//number

赋值运算符

= 、+=、 -=、 *= 、/=、 %=
如:

var a=3;
a+=2;
console.log(a);//5   a=a+2  

逻辑运算符

一般情况下,逻辑运算符结果为:布尔类型
逻辑运算符:
||:逻辑或(或者),若两边的操作数有一个为真,则结果为真,均为假,则为假
&&:逻辑与(并且),若两边均为真则为真,否则为假
!:逻辑与(取反)
如:

var a=true||false;
console.log(a);//true

如:

var a=3<=9&&3>=0
console.log(a);//true

剖析:
||
var a=true||false;
逻辑或中只要有第一个操作数为真,后面的就不再执行了
第一个为假,则结果取决于第二个操作符
如:

var a=5;
var b=true ||a++;
console.log(b,a);//b为true,a为5,因为前面正确了,后面就不用看了

&&
第一个正确看第二个,结果为第二个
第一个为假,则不执行后面的了
如:

var a=true&&3;//3
var b=false&&9;//false

条件运算符

三元运算符

?:
表达式?结果1:结果2

若表达式为真,则最终结果为1,否则,结果为2

如:

5>=3?console.log('嘿嘿'):console.log('哈哈')//嘿嘿

运算符的优先级:括号>算术运算符>比较运算符>逻辑运算符>条件运算符>赋值

真:true ,除了false里面的其他都为真
假:false, ‘’ 、0、null、undefined

如:

var b,c=null;
var a=b?12:8; 
var b=c?9:10; 
console.log(b,c) //8 因为a未赋值是undefined;10 因为c为null

如:

var str='0';
var str1=str?12:8; 
console.log( str1) //12 因为str是string类型
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sunshinedada

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值