JavaScript笔记:运算符

运算符:等同于数学中的运算一样处理

表达式:一定都会有值

//赋值表达式
var a = 10;
//算术表达式
a + 10;
console.log(a);

1、算术运算符:+ - * / % ++ –

(1)i++与++i的区别:

i++ 先用再加
++i 先加再用

(2)优先级问题:

先算 * / %,再算 + -
可以使用括号()改变运算顺序

(3)解决误差

使用函数 toFixed(n) 其中n表示保留的小数位数

var a = 2 - 1.6;
console.log(a);//结果为:0.399999999999999
a = a.toFixed(2);
console.log(a);//结果为:0.40
(4)键盘输入值

基本语法:prompt("提示","默认值(可省略)");

var a = prompt("请输入:"); //假设输入2
console.log(a);//结果为2

2、关系运算符:> < >= <= != === !==

最终的结果为boolean类型的值
==/!=仅判断数据值
===/!==判断数据的值和数据的类型

(1)string与number比较时

string会先转换为number,使用了Number()函数
任何数据与NaN比较,结果都会是false

(2)string与string比较时

二者使用Unicode码进行比较
查看unicode码方法:'a'.charCodeAt()
空字符可以当做false使用,如""00.0undefined

3、逻辑运算符:多个条件之间的判断关系

(1)与:&&

两个条件都为true,则结果为true
短路逻辑:只要第一个条件为false,结果就会为false,后面的语句不进行操作。即“见0则0”

(2)或:||

两个条件有一个条件为true,则结果为true
短路逻辑:只要第一个条件为true,结果就会为true,后面的语句不进行操作。即“见1则1”

(3)非:!

取反

4、位运算符

只能做数字的运算,而且要将数字转为二进制

(1)&:按位 与

对应某一位上的操作数都是1时,该为结果为1,否则为0

应用场景:判断奇偶性(比取余效率高)
//和1做按位与运算,最后一位为1,则是奇数,否则为偶数
console.log((10 & 1 !== 0));//结果为false
(2)|:按位 或

对应某一位上的操作数有一个是1时,该为结果为1,否则为0

应用场景:向下取整
var a = 48.89;
console.log(a | 0); //结果为:48
(3)<<:按位左移

将二进制数,向左移动几位,右边补0

//将1的二进制数左移2位
console.log(1 << 2);
//左移前:0000 0001
//左移后:0000 0100
// 结果为:4
(4)>>:按位右移

将二进制数,向右移动几位,左边补0

//将8的二进制数右移2位
console.log(8 >> 2);
//左移前:0000 1000
//左移后:0000 0010
// 结果为:2
(5)^:异或

对应某一位上的操作数只一个是1时,该为结果为1,否则为0

应用场景:交换两个变量的值
var a = 5,
    b = 3;
a = a ^ b;//a = 6
b = b ^ a;//b = 5
a = a ^ b;//a = 3

5、赋值运算符:= += -= *= /= %= &= |= ^=

+=:a += b; ===> a = a + b;
-=:a -= b; ===> a = a - b;
……

6、三目运算符:

基本语法:表达式1 ? 表达式2 : 表达式3
其中表达式1的结果为boolean类型,如果表达式1结果为true,则执行表达式2
如果表达式1结果为false,则执行表达式3

var score = 78;
var result = score >= 60 ? "及格" : "不及格";
console.log(result); //结果为:及格
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值